Я пытаюсь сделать эту работу (в GCC 4.6) без лая на меня.
#define FOO ""
#define BAR ""
#if ....
#define FOO "Foo, good sir"
#endif
#if ...
#define BAR "Bar, my lady"
#endif
....
#define EVERYTHING FOO BAR ...
У меня будет много. Так что делайте это так, а не:
#if ...
#define FOO "Foo"
#else
#define FOO ""
#endif
Сохраняет много кода и делает его более читаемым. Предупреждение, которое я получаю:
предупреждение: "FOO" переопределено [включено по умолчанию]
Есть ли способ отключить это предупреждение в коде для данного раздела? Я нашел Diagnostic Pragmas, чтобы отключить определенные предупреждения, но я не могу найти, какое предупреждение (в этом списке Параметры запроса или подавления предупреждений), которые необходимо отключить здесь.
Кто-нибудь знает, как это сделать? Или другим способом избежать того, чтобы #else #define
все они были в пустой строке?