天天看点

C++编码规范(一)1           文件组织

1      文件组织.............................................................................................................................. 2

1.1       文件结构....................................................................................................................... 2

1.1.1    版权和版本的声明................................................................................................... 2

1.1.2    头文件的结构........................................................................................................... 2

1.1.3    头文件的作用........................................................................................................... 5

1.2       目录结构....................................................................................................................... 5

2      命名规则.............................................................................................................................. 5

2.1       总则............................................................................................................................... 5

2.2       文件............................................................................................................................... 7

2.3       变量............................................................................................................................... 7

2.4       自定义类型................................................................................................................. 10

2.5       函数............................................................................................................................. 10

3      注释.................................................................................................................................... 11

3.1       总则............................................................................................................................. 11

3.2       文档注释..................................................................................................................... 11

3.3       源程序文件................................................................................................................. 12

3.4       类................................................................................................................................. 12

3.5       函数............................................................................................................................. 13

3.6       变量............................................................................................................................. 14

3.7       语句............................................................................................................................. 14

4      程序的版式....................................................................................................................... 15

4.1       空白符......................................................................................................................... 15

4.1.1    空行......................................................................................................................... 15

4.1.2    空格......................................................................................................................... 15

4.1.3    对齐......................................................................................................................... 15

4.2       表达式......................................................................................................................... 15

4.2.1    运算符的优先级..................................................................................................... 15

4.2.2    复合表达式............................................................................................................. 15

4.2.3    逻辑表达式............................................................................................................. 16

4.3       基本语句..................................................................................................................... 17

4.3.1    代码行..................................................................................................................... 17

4.3.2    长行拆分................................................................................................................. 18

4.3.3    修饰符的位置......................................................................................................... 18

4.4       条件语句..................................................................................................................... 18

4.5       循环语句..................................................................................................................... 19

4.6       常量............................................................................................................................. 21

4.7 类中的常量

............................................................................................................... 21

4.8       函数............................................................................................................................. 22

4.8.1    参数......................................................................................................................... 22

4.8.2    返回值..................................................................................................................... 24

4.8.3    函数内部实现......................................................................................................... 27

4.8.4    构造函数、析构函数与赋值函数......................................................................... 29

4.8.5    重载......................................................................................................................... 29

4.8.6    使用断言................................................................................................................. 29

4.8.7    其它......................................................................................................................... 31

4.9       内存管理..................................................................................................................... 31

4.10     类................................................................................................................................. 32

5      可移植性............................................................................................................................ 34

6      提高程序的效率............................................................................................................... 35

6.1      一些有益的建议......................................................................................................... 35

1           文件组织

1.1        文件结构

1.1.1   版权和版本的声明

版权和版本的声明位于头文件和定义文件的开头(参见示例1-1),主要内容有:

(1)版权信息。

(2)文件名称,标识符,摘要。

(3)当前版本号,作者/修改者,完成日期。

(4)版本历史信息。

//Copyright (c) 2002-2005,   中国地质大学

// All rights reserved.

//

// 文件名称:输入文件名,如filename.h

// 文件标识:见配置管理计划书

// 摘    要:简要描述本文件的内容

//

// 当前版本:1.1

// 作    者:输入作者(或修改者)名字

// 完成日期:2002年7月20日

//

// 取代版本:1.0

// 原作者  :输入原作者(或修改者)名字

// 完成日期:2002年5月10日

示例1-1 版权和版本的声明

1.1.2   头文件的结构

头文件由三部分内容组成:

(1)头文件开头处的版权和版本声明(参见示例1-1)。

(2)预处理块。

(3)函数和类结构声明等。

假设定义文件的名称为 graphics.cpp,定义文件的结构参见示例1-2。

// 版权和版本声明见示例1-1,此处省略。

#include “graphics.h” // 引用头文件

// 全局函数的实现体

void Function1(…)

{

}

// 类成员函数的实现体

void Box::Draw(…)

{

}

示例1-2 C++/C定义文件的结构