概述
9.1 单独编译
c++鼓励程序员将组件函数放在独立的文件中。可以单独编译这些文件,然后将他们链接成可执行文件。如果只修改了一个文件,则可以只重新编译该文件,然后将它与其他文件的编译版本重新链接。
一个非常有用的组织程序的策略是把程序分成三部分:
- 头文件:包括结构声明和使用这些结构的函数的原型。头文件一般包含类的定义、
extern 变量的声明和函数的声明. - 源代码文件:包含与结构有关的函数的代码。
- 源代码文件:包含调用上述函数的代码(主函数)。
不要把函数的定义和变量的定义放在头文件中。因为c++有单定义规则,变量只能有一次定义。如果在头文件中包含一个函数定义,然后在其他2个文件中包含该文件,则咋一个程序中将包含同一函数的2次定义,除非函数是内联的,否则将出错。
变量的声明和定义
:我有一个误区,就是认为int a;
是声明,而int a = 1;
是定义。实际上2者都是定义,后者不仅定义了还初始化了。所以二者都不能出现在头文件中。可以使用extern int a;
声明变量。具体内容参阅变量的声明和定义
下面列出了头文件常包含的内容:
- 函数原型
- 使用#define或const定义的符号常量
- 结构声明
- 类声明
- 模板声明
- 内联函数
#ifndef COORDIN_H_
#define COORDIN_H_
...
#endif
编译器首次遇到该文件时,名称COORDIN_H_没有定义(根据include文件名来选择名称,大写,并加上下划线,以创建一个在其他地方不太可能定义的名称)。这种情况下,编译器将查看#ifndef和#endif中间的内容(这正是我们想要的),并读取定义COORDIN_H_的一行。如果同一文件遇到包含其他coordin.h的代码,编译器将知道COORDIN_H_已经定义了,从而跳到#endif后面一行。
最后
以上就是失眠电源为你收集整理的c++头文件怎么写的全部内容,希望文章能够帮你解决c++头文件怎么写所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复