头文件应该怎么写
来源:互联网 发布:逆袭网络剧第二季换人 编辑:程序博客网 时间:2024/04/30 14:43
因为一个对象只能定义一次,能够声明多次,所以头文件最重要的规则是只声明,不定义(除少数对象外)。而且只声明其他文件需要用到的对象,其他文件不需要用到的对象没必要在头文件中声明。当其他文件需要用到本文件定义的一些对象时,我们可以将这些对象写到头文件中,其他文件只要include这个头文件即可使用相应的对象。
头文件一般包含类的定义(不包含类定义外部的成员函数实现),extern变量声明,以及函数声明。要看一个项目好不好,看它的头文件合不合理是一个参考因素。只有从逻辑上关联比较紧密的对象声明,我们才能够放在一个头文件当中,这样它们在一起被使用的概率比较大,而且符合逻辑,方便管理。
能够在头文件中定义的特殊情况,除了类定义之外,还有在编译的时候已知的const对象和内联函数。除此之外不要定义,只能声明。编译时已知的const对象是指,用常量表达式初始化赋值的const对象。如:
const int ival = 5; //right
const int ival1 = a; //error
其实在每一个包含该头文件的文件中都定义了一个相同名字的相同值的const对象。但是const对象的有效范围只能是本文件,所以不会和其他文件的产生冲突。这样一来,你可能会问,每个包含该头文件的文件都定义了一个一模一样的const对象,都给它分配内存,那岂不是差的代码风格。其实不会,在代码编译之后,凡是调用了该const对象的地方都直接用对应的常量代替,而不会单独给该const对象分配存储空间。
还需要注意的是头文件保护符,以避免头文件被多次包含,和内联函数的解释。后续有空做进一步解释。
下面是一个简单的头文件例子:
#ifndef TEST_H //!< 头文件保护符,防止多重调用#define TEST_H const int ival = 5 * 2; //!< 用常量表达式初始化的const对象extern double totalNum; //!< extern对象,说明该对象在其他文件定义extern double sq2;int addInt(int a, int b); //!< 函数声明double sqrInt(int a);#endif
- 头文件应该怎么写
- 头文件怎么写
- 头文件中应该写什么
- c语言头文件怎么写?
- C语言头文件怎么写
- c语言头文件怎么写?
- c++头文件和实现文件应该怎么布置
- c++头文件和实现文件应该怎么布置
- 博客应该怎么写
- 开题报告应该怎么写
- 我们应该怎么写程序?
- 我们应该怎么写程序?
- 投标方案应该怎么写?
- 如下SQL应该怎么写?
- 代码注释应该怎么写
- 基本轮播图应该怎么写
- 程序员简历应该怎么写?
- 解题报告应该怎么写
- android入门(五) 常见事件响应及实现方式
- iOS审核提交IDFA广告标示符拒绝
- linux shell 之if-------用if做判断
- [linux]find命令
- 平谷十日梦幻经历记
- 头文件应该怎么写
- 关于JVM结构的学习
- angularjs 去往其他页面,目标页面controller中的方法无法自动加载
- Java学习笔记----进制转换及数据类型
- Fedora20配置VNC服务进行远程桌面链接
- 静态类和静态类成员(C#)
- AWS ARN 学习
- Android Api Demos登顶之路(四十九)Notification-->Incoming Message
- sysbench0.5下面测试postgresql9.4遇到的问题