最近是有时间来好好的阅读一些经典的书籍了,看来朋友的推荐真的不错,这本林锐博士的《高质量c++编程指南》真的是受益匪浅。 在从事软件开发行业的朋友们,原来我们真的是忽略了不少现实的问题,我们在完成软件的开发的同时,我们忽略了软件的质量。。。。。
每一个c/c++程序一般都会有两个文件,一个是程序的声明文件(declaration),一个是程序的定义文件也就做实现(Implementation)。
头文件的结构:
头文件一般包括三个部分:
程序的版权和版本信息、预处理部分、函数和类的声明部分
注意:
1、版权和版本信息
![](https://i-blog.csdnimg.cn/blog_migrate/6810355c2f78c12e91b7997a8e8c583a.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/a41954a27d6ad96fa2c2cf816e677448.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/1327ab569c1ae82736693a50b8e33378.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/6a9c071a08f1dae2d3e1c512000eef41.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/6a9c071a08f1dae2d3e1c512000eef41.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/6a9c071a08f1dae2d3e1c512000eef41.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/6a9c071a08f1dae2d3e1c512000eef41.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/6a9c071a08f1dae2d3e1c512000eef41.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/6a9c071a08f1dae2d3e1c512000eef41.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/6a9c071a08f1dae2d3e1c512000eef41.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/6a9c071a08f1dae2d3e1c512000eef41.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/6a9c071a08f1dae2d3e1c512000eef41.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/6a9c071a08f1dae2d3e1c512000eef41.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/6a9c071a08f1dae2d3e1c512000eef41.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/6a9c071a08f1dae2d3e1c512000eef41.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/0196c3df5ea9e936f21e9932cca91014.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/6810355c2f78c12e91b7997a8e8c583a.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/6810355c2f78c12e91b7997a8e8c583a.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/6810355c2f78c12e91b7997a8e8c583a.gif)
2、为了防止头文件被多次编译,要使用ifndef、define、endif
3、使用#include <StandardLib.h>格式调用标准库(编译器会从标准库目录开始搜索)
4、使用#include "StandardLib.h"格式调用非标准的库,一般是用户自定义的库(编译器会从用户的工作目录下开始搜索)
5、一般不要在头文件中出现全局变量的声明 如:extern int value....
6、在头文件中一般尽量只作声明不作实现
定义文件结构:
它也包括三部份:
版权和版本信息、要引用的头文件、类和函数的声明
头文件的作用:
1、通过头文件来调用库的功能(在软件的开发中,一些源码不需要向用户公开,那么就可以提供相关的头文件或者二进制库即可,用户只需要按照头文件中的接口的声明来调用库的功能不必关心那些接口是如何实现的)
2、通过头文件来实现类型的安全性检查(可以防止开发人员在软件开发中的笔误,如果开发人员在头文件和定义文件中使用的变量或者函数不同时,那么就会在程序的编译阶段报错,得到提示)