1.命名规范

关于命名规范我们常用于本地变量名、全局变量名、预处理指令名称、函数名称、命名空间名称、类名、成员变量名称、成员函数名称。

1.1 通用命名规范.

在开发的时候命名尽量使用描述性的命名。这样的命名更加有助于别人快速的理解。比如:

【C++】编码&命名规范_C++

关于缩写,除非是大家都能够看得懂的缩写。否则尽量不要使用缩写。

【C++】编码&命名规范_命名规则_02

1.2 本地变量

通常情况下变量名一律小写。单词以下划线链接。如:

【C++】编码&命名规范_成员变量_03

1.3 全局变量

对于全局变量的名称通常可以添加g_作为前缀。建议尽量少的使用全局变量。全局变量的命名一般不做特殊要求。建议和本地变量的命名规则保持一致。

1.4 预处理指令

这里的预处理指令一般是#defined 这样的命名定义。一般情况下建议将#defined 后的名称使用全大写模式。注意defined之后不要添加语句结束符[;].正常的写法例如:

【C++】编码&命名规范_C++_04

1.5 函数

普通函数通常使用大小写混合模式,函数名以大小写字母开头每个单词的首字母大写。

例如:

【C++】编码&命名规范_C++_05

对于存取函数(get/set)而言建议和成员变量名称保持一致。例如:

【C++】编码&命名规范_命名规则_06

1.6 命名空间

命名空间的名称是全小写的,基于项目名称和目录结构如:

【C++】编码&命名规范_成员变量_07

1.7 类

类型命名每个单词以大写字母开头,不包含下划线。例如:

【C++】编码&命名规范_成员变量_08

1.8 成员变量

成员变量命名规则和本地变量命名规则保持一致。

1.9 成员函数

成员函数命名规则和全局函数命名规则保持以一致。

2.注释规范

2.1.单行注释

使用双斜线// 或者 /* */ 都可以,一般保持风格同一就好。

2.2.文档注释

通常是新建一个.h或者.cpp文件时。添加在文件顶部的注释。该注释主要包括。版权、许可版本、作者。

2.3.类注释

类注释主要描述当前类的作用,以及提供的相关功能。如果在文档注释中已经包含相关信息。在类注释中可以添加一句详见文档注释。

2.4.函数注释

函数声明:

注释于声明之前,描述函数功能及用法,注释使用描述式(“Opens the file”)而非指令式 (“Open the file”);注释只是为了描述函数而不是告诉函数做什么。通常,注释不会描述函数如何实现,那是定义部分的事情。

函数声明处注释的内容:

【C++】编码&命名规范_全局变量_09

函数定义:

每个函数定义时要以注释说明函数功能和实现要点,如使用的漂亮代码、实现的简要步骤、如此实现的理由、为什么前半部分要加锁而后半部分不需要。

2.5. 变量注释

通常变量名本身足以很好说明变量用途,特定情况下,需要额外注释说明。

类数据成员:

每个类数据成员(也叫实例变量或成员变量)应注释说明用途,如果变量可以接受 NULL 或-1等警戒值(sentinel values),须说明。

全局变量:

和数据成员相似,所有全局变量(常量)也应注释说明含义及用途。

  1. 编码规范

3.1. 括号

对于C/C++而言。编码的中出现的大括号通常放在函数,类等名称的下一行。例如:

【C++】编码&命名规范_C++_10

3.2. 缩进

如上一点中代码展示,在代码中可以给出适当的缩进。便于代码的阅读。

本笔记主要从命名规范、注释规范、代码规范三个方面描述了在日常C++开发过程中需要遵守的规范。当然正对于不同公司、不同团队可能会指定自己更加详细的编码规范。在开发过程中可以先阅读一下项目中的其他源代码。让自己的代码风格和项目代码风格保持一致。