#if defined(_BE_) || !defined (_TO_BE_) - страница 2

 
Приведённая задача действительно вполне реализуема и сейчас, пусть и чуть более громоздко.
А вот сама по себе директива #if конечно необходима.  В тех случаях где требуется именно сравнение константы.
 
TheXpert:

Во-первых это не костыль а решение.

Во-вторых это не значит что я против того, чтобы добавили составное условие и вообще #if  в дополнение к #ifdef.

Я за любой движ в развитии языка. Просто эта вещь вполне реализуема существующими конструкциями, есть более насущные вещи

Это как раз и называют "костылём" - грязное решение в отсутствии прямой возможности. Не принимайте мою фразу на личный счёт, просто это частая ситуация, когда кто-то просит реализовать фишку, а ему рассказывают, как это обойти. Решения-то мы знаем. Вот фрагмент мусора из одного моего файла, только для подготовки промежуточных дефайнов. Что надо-бы делать прямо на месте одной строкой.

#ifdef TRAILING_FIXED
        #define TRAILING_TS
#endif // TRAILING_FIXED

#ifdef TRAILING_FRACT
        #define TRAILING_IND
#endif // TRAILING_FRACT

#ifdef TRAILING_MA
        #define TRAILING_TS
        #define TRAILING_IND
        #define TRAILING_PSAR_MA
#endif // TRAILING_MA

#ifdef TRAILING_PSAR
        #define TRAILING_IND
        #define TRAILING_PSAR_MA
#endif // TRAILING_PSAR

#ifdef ATR_LVL
        #undef  ATR_LEVELS
        #define ATR_LEVELS
#endif // TRAILING_ATR_BE

#ifdef ATR_SL
        #undef  ATR_LEVELS
        #define ATR_LEVELS
#endif // ATR_SL

#ifdef TRAILING_TS_ATR
        #define TRAILING_IND
#endif // TRAILING_ATR

#ifdef _DEBUG
        #ifndef DEBUG
                #define DEBUG
        #endif // DEBUG
#endif // _DEBUG

А насчёт более насущных вещей - у каждого они свои. МК годами или совсем не реализуют наши предложения и даже многие баги. У них своя, более маркетологическая дорожная карта.

А ведь я предлагал только простые для реализации вещи. Что не требует смены концепции или больших изменений кода. То, что уже заложено в коде. Например - добавить в препроцессор несколько правил, связанных с #if, ||, &&. Или, например, сохранять состояние интерфейса между перезагрузками терминала (ширины столбцов таблиц: Эксперты, Журнал, Обзор рынка, Алармы), простое дело на час работы. Можно пережить, но "осадочек остаётся".

 
Edgar:

А ведь я предлагал только простые для реализации вещи.

можете почитать как было дело с ifdef

с того момента как я предложил добавить конструкцию до момента ее добавления прошло почти 3 года.

 
TheXpert:

можете почитать как было дело с ifdef

с того момента как я предложил добавить конструкцию до момента ее добавления прошло почти 3 года.

Вот именно...
Как программисты обходятся в больших проектах без условной компиляции? Может, я один извращенец?