C C++编程规范.doc
《C C++编程规范.doc》由会员分享,可在线阅读,更多相关《C C++编程规范.doc(14页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、C和C+编程规范C和C+编程规范作者:日期:审批:日期:目 录1引言31.1文档用途31.2阅读对象31.3参考资料32变量命名规则42.1构成方式42.2变量作用域42.3变量类型42.4特别情况53其他命名规则63.1函数和过程63.2Class(类)63.3Structure(结构)63.4Interface(Corba接口)63.5常数63.6全局标识符64注释74.1源程序头74.2函数或过程74.3代码修改84.4其他注释85代码风格和版式约定95.1一般约定95.2头文件105.3类风格约定116关于跨平台和编译器的处理136.1系统配置头文件compile.h136.2关于in
2、t32和int64137其他参考惯例141 引言1.1 文档用途本文对C以及C+ 的编程的规则和惯例进行说明,以规范后台Unix环境软件的编码。以下定义的各种规则在某些情况下并不是绝对适用,如果按照规则来编写C和C+的源程序,可以避免很多不必要的错误。遵循以下的规则将有助于源程序的阅读和修改,增强软件的可读性、可维护性和移植性。1.2 阅读对象此文档适合以下人员阅读:l 产品开发工程师l 产品维护人员1.3 参考资料2 变量命名规则2.1 构成方式命名的构成方式为变量作用域 + 变量类型 + 基本名说明:1. 变量作用域表明变量的作用范围,用小写,其后跟“_”。2. 变量类型表明变量的数据类型
3、,用小写;3. 基本名,由一个或数个单词组成,构成“主谓”、“动宾”等形式,单词的第一个字母大写,其他字母小写,如Count、RatedCharge。2.2 变量作用域变量类型前缀举例注释全局变量gg nMaxBorrowDay1. g表明此变量是全局变量2. n指此变量是一整数3. MaxBorrowDay是基本名局部变量无nCount1. n指此变量是一整数2. Count是基本名类成员变量mm_nStudentCount1. m表明此变量是类成员变量2. n指此变量是一整数3. StudentCount是基本名2.3 变量类型标志类型描述举例bboolean flag (TRUE, FA
4、LSE)BOOL bAbort; cCharacterchar cInput; n16-bit signed integerint16 nCount; i32-bit signed integerint32 iAmount;ll64-bit signed integerint64 llAmount;strStringstring strBuf;szzero-terminated character arraychar* szString;pPointint32* pNumber;aarray asLine2;fFloatfAmount;ddouble dExRate fpfilepointer
5、(File *)fpFileHandle;2.4 特别情况在函数、事件等过程中,例如,循环中用到的临时变量可直接用i、j、k等形式命名变量。3 其他命名规则3.1 函数和过程动词小写后加“_”分隔符,“_”后所跟的第一个词小写其他字头大写,只允许一个分隔符。如:get_inputString()3.2 Class(类)系统表类,每单词的首字母大写,其它字母小写,不加分隔符,前跟“AI”如:AILocalPlan;其它类,字头大写,不加分隔符,前跟“C”。3.3 Structure(结构)每单词的首字母大写,其它字母小写,不加分隔符,前跟“S”如:SRatedCdr;说明:如无特别必要,Stru
6、ct的命名可以遵循Class的命名。Struct中的数据的命名遵循Class的Member的命名。3.4 Interface(Corba接口)每单词的首字母大写,其它字母小写,不加分隔符,前跟“I”如:IBusiAccept;说明:如无特别必要,Interface的命名可以遵循Class的命名。Interface中的数据的命名遵循Class的Member的命名。Interface中使用到的Structure(结构)的命名规则同3.3中的说明3.5 常数全部大写,词与词之间以“_”为分隔符。如:MAX_DAY_COUNT3.6 全局标识符所有的全局类、全局枚举类型、全局类型定义、全局函数、全局常
7、数、全局变量必须带模块前缀,以保证其全局唯一性。4 注释4.1 源程序头每个源代码文件(包括.c, .cpp, .h, .hpp, .x, .xpp)必须在文件的头部描述文件名、内容、修改记录。修改记录包括日期(YYYY/MM/DD)、创建者/修改者、修改内容,新增的修改记录排在最前。源程序头的注释格式采用 doxygen 风格的形式:例如:/* file cccom.cpp* brief* This file defines the proxy for all communication classes. Also possible* events and errors are define
8、d.* History* 1996/10/25 ReWe integration of missing return values* 1996/10/14 Andreas Welsing #pragma pack() inserted* 1996/06/13 ReWe all timers are set to -1* 1995/10/25 ReWe first release*/4.2 函数或过程在每个函数或过程的前头,要对函数或过程进行以下方面的些注释:注释标记注释描述author作者说明brief函数或过程的功能描述param参数说明return函数返回值的说明see相关文件说明例如:/
9、* * brief* Draws as much of the specified image as is currently available * with its northwest corner at the specified coordinate (x, y). * This method will return immediately in all cases, even if the * entire image has not yet been scaled, dithered and converted * for the current output device. *
10、* author Sami Shaio * author Arthur van Hoff * param img the image to be drawn * param x the x-coordinate of the northwest corner * of the destination rectangle in pixels * param y the y-coordinate of the northwest corner * of the destination rectangle in pixels * return true if the image is complet
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- C+编程规范 C+ 编程 规范
限制150内