android studio 宏定义,宏定义(#ifndef+#define+#endif)的作用
本文介绍#ifndef、#define、#endif三者一起使用的宏定义的作用。在头文件中,我们经常会在头文件中见到#ifndef、#define、#endif三者一起使用的宏定义。例如,在头文件xxx.h中(此样式可参考):#ifndef __XXX_H__#define __XXX_H__#include // 其他代码#endif使用#ifndef、#define、#endif组合宏定义的作
·
本文介绍#ifndef、#define、#endif三者一起使用的宏定义的作用。
在头文件中,我们经常会在头文件中见到#ifndef、#define、#endif三者一起使用的宏定义。
例如,在头文件xxx.h中(此样式可参考):
#ifndef __XXX_H__
#define __XXX_H__
#include
// 其他代码
#endif
使用#ifndef、#define、#endif组合宏定义的作用是:防止头文件的重复包含和编译。
例如,现在有4个文件:main.cpp、fileA.h、fileB.h、fileC.h,这几个文件的包含关系如下:
在fileC.h中,存在nTest的定义。在这种情况下,编译main.cpp时,系统就会报错,提示nTest重定义,错误信息如下:
使用本文介绍的#ifndef、#define、#endif宏定义组合,就可以很好的避免此问题,修改后的fileC.h代码如下:
#ifndef __FILEC_H__
#define __FILEC_H__
#include
using namespace std;
int nTest = 1;
#endif
更多推荐
已为社区贡献5条内容
所有评论(0)