C++代码规范及详解.docx
《C++代码规范及详解.docx》由会员分享,可在线阅读,更多相关《C++代码规范及详解.docx(6页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、编程规范1、文件结构(1)、头文件注释需要有版权信息、类名称、版本信息、日期、作者、类职责。(2)、头文件需要用ifndef和define,防止重复包含。(3)、尽量使用前向声明。(4)、头文件包含应先包含系统文件、再包含自定义文件。(5)、文件组织方式应该遵循文件包含、宏、全局变量和静态成员变量顺序。2、标识符(1)、标识符应表示出含义,如果是变量,类的成员和全局变量,还要表示出类型、作用域和含义。命名尽量采用“名词”或者“形容词” + “名词”格式。命名格式采用匈牙利命名法。(2)、变量必须初始化。(3)、指针必须初始化为nullptr,使用时必须判空,释放后必须置空,防止野指针。(4)、
2、判断二时常量放在左边。3、代码规范(1)、采用Tab键来缩进,每嵌套一级缩进一个Tab, “ ”需保持缩进对齐。(2)、头文件和实现文件中函数之间需要空行。(3)、一行代码只做一件事。(4)、关键字后跟一个空格。(5)、函数名之后不加空格。(6)、操作符前后加空格(除+、-、&、!、外)。(7)、长行拆分。(8)、表达式以“()”表示优先级。(9)、一个函数内局部变量赋值等号对齐(Tab对齐)。4、类(1)、包含指针类型的需实现赋值操作符和拷贝构造函数。(2)、分配和释放空间必须成对出现(QObject子类设置了父对象的不用)。(3)、成员初始化顺序应和成员声明顺序保持一致。(4)、尽可能使用
3、初始化列表来初始化成员变量。(5)、尽量防止使用静态成员变量和全局变量降低耦合。(6)、非POD结构不要用memset初始化对象。(7)、尽量多用组合,少用继承。(8)、数据结构体必须加构造函数。5、函数(1)、添加注释,包括概述、返回值、参数(接口必写,内部关键函数必写)。(2)、函数功能尽量单一。(3)、函数命名用全称,首字母小写,多个单词组合的采用驼峰式命名。(4)、函数声明中参数名称不可省略。(5)、参数顺序以先传入类型,后返回类型。(6)、函数实参传递过程中防止无意义的临时变量(尽量用常量引用和引用,引用是需耍修改原值)。(7)、函数尽量短小、易懂,尽量保持200行以内。(8)、函数
4、只能有一个返回路径。(9)、尽量设计少调用其他函数,多被其它函数调用的函数。(10)、尽量防止递归调用。(12)、函数返回值时防止临时先用局部变量暂存数据再返回。(13)、函数形参多的尽量给默认值,默认值放到后面。6、其它(1)、硬编码字符串必须加tr。(2)、编码过程中不能出现警告。(3)、不要使用C风格的强制类型转换操作。编程规范4、文件结构(1)、头文件注释需要有版权信息、类名称、版本信息、日期、作者、类职责。* version : 1. 0* Copyright : Copyright (c) 2017,北京亚控科技开展有限公包.* fi 1 cnamc : Codelorni. h*
5、 L* version: 1.0* anlIior:change:* 2.0* eiuthor:chcinge:* author:W A P* contcict:iiserc()nipciriy. com,1* bricf :* note :*(2)、头文件需要用ifndef和define,防止重复包含。pifndef CodeForm_h_#define CodeForm_h#endif / CodeFormh(3)、尽量使用前向声明。(4)、头文件包含应先包含系统文件、再包含自定义文件。(5)、文件组织方式应该遵循文件包含、宏、全局变量和静态成员变量顺序。5、标识符(1)、标识符应表示出含
6、义,如果是变量,类的成员和全局变量,还要表示出类型、作用域和含义。命名尽量采用“名词”或者“形容词” + “名词”格式。命名格式采用匈牙利命名法。前缀类型描述例子g_Global Variableg_Serversm_Member variablem_pDocchchar8-bit characterchGradebBOOLBoolean valuebEnablednintInteger (size dependent on operating system)nLengthnUINTUnsigned value (size dependent on operating system)nLeng
7、thwWORD16-bit unsigned valuewPos1LONG32-bit signed integer1 OffsetdwDWORD32-bit unsigned integerdwRangeP*pointerpDoceEnumerate value variableIpszLPSTR32-bit pointer to character stringIpszNameIpfn(*fn)()callbackFar pointer to CALLBACK functionIpfnAbortszNullTerminated Stringchar szNameNAME LEN;strC+
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- C+ 代码 规范 详解
限制150内