作用:
能控制实际上什么代码能被编译器接受
工作原理:
文本替换 发生在编译之前的预处理阶段
代码示例:
#include<iostream>
#define Log(x) std::cout<< x <<std::endl;
int main()
{Log("hello")//在控制台上打印hello
}
应用:
可以用一些判断方法来表示状态 选择保留或剔除某些代码
代码示例:
要实现在debug模式中有打印功能
release模式中没有
右击项目->属性->c/c++->预处理器 加上PR_DEBUG;配置改成debug模式
relese中加上PR_RELEASE
#ifdef PR_DEBUG//判断当前是 什么模式
#define Log(x) std::cout<< x <<std::endl;//若是debug模式就运行该语句
#else
#define Log(x) //若上面条件未满足 就替换为空
#endif