C++的编程规范(第一小节)

一、代码规范的目标准则


(1)代码简洁精炼,美观,可读性好
(2)高效率
(3)高复用,可移植性好
(4)高内聚,低耦合
(5)没有冗余
(6)规范性,代码有规可循。
(7)特殊排版、特殊语法、特殊指令,必须特别说明

二、头文件包含

先系统头文件,后用户头文件。

系统头文件使用:#include <xxx.h>

自定义同文件使用:#include "xxx.h"

这两种写法就告诉编译器寻找头文件的优先路径,是从系统目录查找,还是从自定义目录查找。

对于不同路径下的头文件目录包含可使用如下的方式

#include "./xxx.h"  头文件在当前目录查找(当前目录是指当前C、C++程序所在的目录)

#include "../xxx.h"头文件在上一级目录查找

#include "somedir/xxx.h"头文件在当前目录的下一级目录查找

#include "../somedir/xxx.h"头文件在上一级目录的一个目录下查找

我们在编写程序时尽量只引用我们用到的头文件,以免给后续看代码的人员造成麻烦。

三、cpp文件和.h文件的常用规则

文件的名称通常为首字母大写或全部小写如:Show.cpp或show.cpp

除了特殊情况外,头文件应使用#ifndef控制块

#ifndef ADD_H
#define ADD_H
//执行定义
#endif         //ADD_H  (加入ADD_H代表此endif代表该部分的定义结束)

头文件中的内容顺序:包含代码块(#include),宏定义代码块(# define),全局变量,全局常量(const),类型定义(typedef),类定义(class),内联部分(inline)

Cpp文件中的内容顺序:包含指令,宏定义,全局变量,函数定义。

四、注释方面

(1)文件头注释:作者,文件名称,文件说明,日期和版本(可选),修改和维护说明(可选)
(2)函数注释:关键函数必须写上注释,说明函数的用途。
(3)函数注释:特别函数参数,需要说明参数的目的,由谁负责释放等等。
(4)函数注释:除了特别情况,注释写在代码之前,不要放到代码行之后。
(5)函数注释:对每个#else或#endif给出行末注释。
(6)函数注释:关键代码注释,包括但不限于:赋值,函数调用,表达式,分支等等。

(7)函数注释:尚未实现完整的代码,或者需要进一步优化的代码,应加上    // TODO ...

(8)函数注释:调试的代码,加上注释    // only for DEBUG
(9)函数注释:需要引起关注的代码,加上注释    // NOTE ...
(10)函数注释:对于较大的代码块结尾,如for, while, do等,可加上    // end for|while|do

五、命名方面

(1)同一性:在编写一个子模块或派生类的时候,要遵循其基类或整体模块的命名风格,保持命名风格在整个模块中的同一性。
(2)标识符组成:标识符采用英文单词或其组合,应当直观且可以拼读,可望文知意,用词应当准确,避免用拼音命名。
(3)最小化长度 && 最大化信息量原则:在保持一个标识符意思明确的同时,应当尽量缩短其长度。
(4)避免过于相似:不要出现仅靠大小写区分的相似的标识符,例如"i"与"I","function"与"Function"等等。
(5)避免在不同级别的作用域中重名:程序中不要出现名字完全相同的局部变量和全局变量,尽管两者的作用域不同而不会发生语法错误,但容易使人误解。
(6)正确命名具有互斥意义的标识符:用正确的反义词组命名具有互斥意义的标识符,如:"nMinValue"和"nMaxValue","GetName()"和"SetName()"
(7)避免名字中出现数字编号:尽量避免名字中出现数字编号,如Value1,Value2等,除非逻辑上的确需要编号。这是为了防止偷懒,不肯为命名动脑筋而导致产生无意义的名字(因为用数字编号最省事)。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值