最近看C++ primer
关于#ifndef防止头文件的重复处理有这么一句话,"只要不存在两个必须包含的头文件要检查一个同名的预处理器常量这样的情形这个策略就能够很好地运作 ",比较不理解,特列两个例子.





































此时结果为 6,test2.h并未执行.
另外一个例子:




































此时就有了问题,编译时会有问题:
error C2065: 'DEBUG2' : undeclared identifier.
个人觉得上面两个例子应该和此命题相关.
最近看C++ primer
关于#ifndef防止头文件的重复处理有这么一句话,"只要不存在两个必须包含的头文件要检查一个同名的预处理器常量这样的情形这个策略就能够很好地运作 ",比较不理解,特列两个例子.
此时结果为 6,test2.h并未执行.
另外一个例子:
此时就有了问题,编译时会有问题:
error C2065: 'DEBUG2' : undeclared identifier.
个人觉得上面两个例子应该和此命题相关.