- 1、本文档共32页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
C编码规范_1
系统软件部C++编码规范
讨论稿
目录
前言 4
第1 章 文件结构 4
1.1 版权和版本的声明 4
1.2 头文件的结构 5
1.3 定义文件的结构 6
1.4 目录结构 6
第2章 程序的版式 7
2.1 空行 7
2.2 代码行 8
2.3 代码行内的空格 9
2.4 对齐 10
2.5 长行拆分 11
2.6 修饰符的位置 11
2.7 注释 11
Doxygen基本语法 12
Doxygen使用中存在的问题 14
中文问题:中文注释在文档中是乱码 14
图形问题:无法绘制类图协作图等图形。 14
输出chm的问题:如何输出.chm文件 14
Doxygen无法为DLL中定义的类 导出文档 15
2.8 类的版式 15
第3 章 命名规则 16
3.1 共性规则 16
3.2 简单的Windows 应用程序命名规则 17
第4 章 表达式和基本语句 18
4.1 运算符的优先级 18
4.2 复合表达式 19
4.3 if 语句 20
4.4 循环语句的效率 22
4.5 for 语句的循环控制变量 23
4.6 switch 语句 23
4.7 goto 语句 24
第5 章常量 24
第6 章 函数设计 25
6.1 参数的规则 25
6.2 返回值的规则 25
6.3 函数内部实现的规则 26
6.4 其它建议 27
第7 章 内存管理 27
7.1 常见的内存错误及其对策 27
第8 章 其它编程要求 28
第9 章 VC 工程的要求 29
9.1工程目录 29
9.2工程设置 29
第10 章 附件 29
10.1主要变量 29
10.2 Visual C++常用前缀 29
10.3 Windows对象名称缩写 30
10.4 Visual C++常用宏定义命名 31
C++编码规范
前言
本编码规范针对C/C++语言。制定本规范的目的:提高代码的可读性,使代码易于查看和维护;提高代码的健壮性,使代码更安全、可靠。
本文档分别对C/C++程序的格式、注释、标识符命名、语句使用、函数、类、程序组织、公共变量等方面做出了要求。规范中蓝色标注为重点要求,粉色为示范,其余为参考。本规范中蓝色标注要求开发人员必须要严格遵守,其余的规范开发人员应尽量遵守。
各项目组在用C/C++语言或基于C/C++语言的开发工具开发项目时,要遵守本规范。
第1 章 文件结构
每个C++/C 程序通常分为两个文件。一个文件用于保存程序的声明(declaration),
称为头文件。另一个文件用于保存程序的实现( implementation),称为定义( definition)
件。
C++/C 程序的头文件以“.h”为后缀,C 程序的定义文件以“. c”为后缀,C++程序
的定义文件以“.cpp”为后缀,不要采用其他后缀。
1.1 版权和版本的声明
版权和版本的声明位于头文件和定义文件的开头(参见示例1-1),主要内容有:
(1)版权信息。
(2)文件名称,标识符,摘要。
(3)当前版本号,作者/修改者,完成日期。
(4)版本历史信息。
示例1-1 版权和版本声明
/**?
*????COPYRIGHT?NOTICE ?
*????Copyright?(c)?2009,?同方威视技术股份有限公司?????(版权声明) ?
?????All?rights?reserved. ?
*? ?
*??@file??(本文件的文件名eg:Test.h) ?
??@brief?(本文件实现的功能的简述) ?
? ?
*?(本文件实现的功能的详述) ?
? ?
*??@version?1.1?????(版本) ?
??@author??????????(作者,eg:) ?
??@date????????????(文件创建日期,eg:20年月日) ?
? ?
*? ?
*??修订说明:版本
*/ ?
1.2 头文件的结构
头文件由三部分内容组成:
(1)头文件开头处的版权和版本声明(参见示例1-1)。
(2)预处理块。
(3)函数和类结构声明等。
? 为了防止头文件被重复引用,应当用ifndef/define/endif 结构产生预处理块。通常用的预处理块是检查一个标识本头文件的宏,我们要求这个宏的名字为“__文件名_H__”。
? 用#include filename.h 格式来引用标准库的头文件(编译器将从标准库目录开始有哪些信誉好的足球投注网站)。
? 用#include “filename.h” 格式来引用非标准库的头文件(编译器将从用户的工作目录开始有哪些信誉好的足球投注网站)。
? 头文件中只存放“声明”而不存放“定义”
在C++ 语法中,类的成员函数可以在声明的同时被定义,并且自动成为内联函数。
这虽然会带来书写上的方便,但却造成了风格不一致,弊大于利。我们要求将成员函数
文档评论(0)