美文网首页
#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