以这段代码为例:
#ifdef THIS_IS_NOT_DEFINED
//lots of code here...
#endif
假设“大量代码”可能会向生成的可执行文件中增加一兆字节。如果 THIS_IS_NOT_DEFINED 确实未定义,那么编译器是否仍会将所有包含的代码写入 .exe?大多数编译器是否遵循类似的程序?
最佳答案
C 预处理器处理#ifdef。如果它没有定义,那么编译器本身甚至看不到代码,因此它无法进入 .exe。
关于c++ - Visual C++ 编译器是否优化了未定义的宏 block ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10610242/