(например в wolfSSL)
struct {
int filed_1;
int field_2;
#ifdef SETTING_A
int filed_b;
#endif
#ifdef SETTING_B
int field_b
#endif
}
В зависимости от выбранной конфигурации и поддерживаемых фич, например применяемых шифров, методово обмена ключами и т.д. структура изменяется до неузнаваемости.
Все эти ifdefы раскиданные по коду и особенно структурам сильно затрудняют понимаение кода.
Есть ли (например, в C++) метод избавиться от них, давая при этом компилятору возможнооть выкинуть ненужные поля из структур?
наследование
можно union заюзать так-то, если нужно выбрать между разными переменными
Бросить програмиирование и заняться например кулинарией, раз такое сложно
Обсуждают сегодня