美文网首页
#ifndef/#define/#endif

#ifndef/#define/#endif

作者: Coder大雄 | 来源:发表于2016-09-17 22:21 被阅读22次

“头文件中的 #ifndef/#define/#endif 防止该头文件被重复引用”

“被重复引用”是指一个头文件在同一个cpp文件中被include了多次,这种错误常常是由于include嵌套造成的。比如:存在a.h文件#include "c.h"而此时b.cpp文件导入了#include "a.h" 和#include "c.h"此时就会造成c.h重复引用。

解释

#ifndef A_H意思是"if not define a.h" 如果不存在a.h
接着的语句应该#define A_H 就引入a.h
最后一句应该写#endif 否则不需要引入

#ifndef GRAPHICS_H // 防止graphics.h被重复引用 
#define GRAPHICS_H 


#include <math.h> // 引用标准库的头文件
…
#include “header.h” // 引用非标准库的头文件
… 
void Function1(…); // 全局函数声明 
… 
class Box // 类结构声明 {
 … 
};
#endif

相关文章

网友评论

      本文标题:#ifndef/#define/#endif

      本文链接:https://www.haomeiwen.com/subject/sdewettx.html