Снятие макроса в C++
Снятие макроса делает директива
#undef: после нее имя перестает
быть макросом и вновь доступно для
переменных и функций.
Порядок важен: пока макрос активен, каждое
совпадение имени раскрывается. После #undef
компилятор видит обычное объявление.
Запишем макрос, снимем его и объявим
переменную с тем же именем:
#define FLAG 1
#undef FLAG
#include <iostream>
int main() {
int FLAG = 9;
std::cout << FLAG << "\n";
return 0;
}
Определите TOKEN как 0,
затем #undef TOKEN. Объявите
int TOKEN = 4 и выведите его.