Директивы условной компиляции в С++

Директивы условной компиляции #if, #ifdef и #ifndef применяются для того, чтобы исключить компиляцию отдельных частей программы. Это бывает полезно при отладке или, например, при поддержке нескольких версий программы для различных платформ.

Формат директивы #if:
#if константное_выражение
...
 [#elif константное_выражение
...]
[#elif константное_выражение
...]
[#else
...]
#endif
Количество директив #elif — произвольное. Исключаемые блоки кода могут содержать как описания, так и исполняемые операторы.

Пример условного включения различных версий заголовочного файла:
# if VERSION == 1
#define INCFILE "versl.h"
# elif VERSION == 2
#def1ne INCFILE "vers2.h" /* и так далее */
#else
#define INCFILE "versN.h"
#endif
#include INCFILE
Другое назначение директивы — временно закомментировать фрагменты кода.

Пример:
#if 0
int i, j ;
double x, у;
#endif
Директива #undef

Директива #undef имя удаляет определение символа. Используется редко, например, для отключения какой-либо опции компилятора.
Онлайн всего: 3
Гостей: 3
Пользователей: 0

STUDLAB Сообщить про опечатку на сайте