此系列文章实为对《高质量程序设计指南--C++/C语言》的重点摘要总结
本篇总结的为文件结构:
每个C/C++程序通常都会有两类文件,一为头文件 (.h), 另一类为源文件 (.c) / (.cpp)
版权和版本的声明:
无论是在头文件或者源文件,添加上版权和版本的声明都是作为程序员应当了解的规范。
版权和版本的声明通常位于文件内的开头,主要的内容有:
- 版权信息
- 文件名称,标识符,摘要
- 当前版本号,作者/修改者,完成日期
- 版本历史信息
/*
* Copyright (c) 2001.********
* All rights reserved.
*
* 文件名称 : ***.c
* 文件标识 : ***
* 摘 要 : ***
*
* 当前版本 : 1.1
* 作 者 : ***
* 完成日期 : 2012年11月8日
*
* 取代版本 : 1.0
* 原 作 者 : ***
* 完成日期 : ****年**月**日
*
*/
当然,上述的所有声明改为英文会更好!因为当你与外国人一起进行开发工作时,那英语就是必不可少的交流工具了。
头文件结构(由三部份内容组成):
- 版权和版本声明
- 预处理块
- 函数和类结构声明等
注意:
- 为了防止头文件被重复引用,应该使用ifndef/define/endif结构产生预处理块
- 头文件只存放“声明”而不存放“定义”
- 不提倡使用全局变量,尽量不要在头文件中出现 extern int a 这类声明
源文件结构(由三部份内容组成):
- 版权与版本声明
- 对应的头文件的引用(#include)
- 程序的实现体(函数体或数据的定义)
头文件的作用:
- 通过头文件来调用库功能,在很多的场合,源代码不便向用户公布,只要向用户提供头文件和二进制的库即可。所以用户只需要按照头文件中的接口声明来调用库功能,而不必关心接口的实现。
- 头文件能加强类型安全检查。如果某个接口被实现或被使用时,其方式与头文件中的声明不一致,编译器就会指出错误,这一简单的规则能大大减轻程序员调试、改错的负担。
一般会把所有的头文件存放在 inlcude 目录, 将源文件存放在 source 目录