类:在头文件(.h)中进行声明,在源文件(.cpp)中进行定义
声明(不分配内存):函数(没有大括号)、变量(extern)、类/结构的声明
- 为什么在头文件中进行声明,而不是定义?
答:如果在a.h中定义而不是声明变量,而在1.cpp和2.cpp中都需要用到该变量。
即对 #include<a.h>,进行cpp(C pre processing),进行编译预处理(文本合成)
则对1.cpp和2.cpp进行编译时,会出现同一个变量重复定义的错误。
所以,头文件中只允许放声明。
- Include
#include"xx.h":先在当前目录查找,然后到系统头文件目录
#include<xx.h>/<xx> :到系统头文件目录找
- 标准头文件结构宏
#ifndef XXXXXX_H_
#define XXXXXX_H_
/*
*/
#endif
如果已经用过了该头文件中的声明,则不需要再次声明。
例如在a.h中进行声明,而在b.h中也用到了a.h中的声明,在1.cpp如果同时调用了a.h与b.h,可能会导致重复声明。