您的位置:首页 > 运维架构

类重定义问题。。。。BSCMAKE: error BK1506 : cannot open file '.\Debug\。。。。

2011-08-02 19:21 531 查看
#ifndef CALCENG_H

#define CALCENG_H

class CalcEng

{

...

};

#endif

这种结构是避免重复包含同一个头文件,引起类的重定义。

#ifdef/#ifndef 的意思, 看看有关预处理器条件编译的部分。

这个例子中,第一次包含此文件时, 宏 CALCENG_H 还没有被定义,#ifndef CALCENG_H

的值为真,一直到相应的 #endif 之间的代码都会被编译,包括了类的定义 和 定义宏 CALCENG_H。

当在同一文件中再包含此文件,宏 CALCENG_H 已经存在,#ifndef CALCENG_H 值为假,

#ifndef 和 #endif 之间的代码就不会被编译了,从而避免了重复定义 class CalcEng。

注意:宏定义的有效范围只在一个文件中。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐