例一:
print.h: 文件内容
#ifndef PRINT_H
#define PRINT_H
#ifdef __cplusplus
extern
#endif
//打印点东西
void Print(int iNum);
#ifdef __cplusplus
}
#endif
#endif
作用:为了防止头文件被重复包含:
如头文件a.h中包含函数fa(); 头文件b.h包含函数fb(); fb()需要调用fa() ,所以b.h中需要包含a.h头文件,有个.cpp文件需要包含fa()和fb(),所以要同时包含a.h和b.h,此时a.h就被重复包含
例二:
a.h:
#ifndef A_H
#define A_H
...block....
#endif
这个只是用来控制避免block多次引用或定义。一般用在.h文件里。这样多次include同一个.h文件,就不会重复引用其中的内容。
#define A_H后 A_H本身内容是无意义的,但是 #ifndef A_H 分支就不会再次进入了。