Условная компиляция #ifdef #endif #else #ifndef #if

#ifdef - помогает нам не компилировать некоторые блоки кода.

пример
#define DEBUG


int main()
{

#ifdef DEBUG  // если DEBUG объявлен, то выведится текст "debug"

    cout << "debug" << endl;
    
#else     // иначе

    cout << "release" << endl; 
    
#endif 

}
условия выполнены
закомментировали #define DEBUG и код пошел по ветке else


#ifndef - это инвертированная версия #ifdef

хоть DEBUG существует и не закомментирован код идет по ветке else


#if - проверяет условие

#elif - дополнительное условие

Last updated