欢迎来到天天文库
浏览记录
ID:40711926
大小:462.50 KB
页数:25页
时间:2019-08-06
《C-C++程序编码规范》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、C/C++程序编码规范文件编号生效日期版次页次深圳市新达通科技有限公司C/C++程序编码规范制订(软件开发部): 复审(机电开发部): 复审(机电开发部): 复审(研发基础部): 复审(企管部): 核准(技术总监): 生效日期: 制(修)订履历:生效日期版次制(修)订原因及章节说明发行页数新订。C/C++程序编码规范文件编号生效日期版次页次一.目的为了提高C/C++代码的可读性,可维护性和可操作性,特制定本编码规范。二.范围本规范适用于公司研发中心软件开发部C/C++程序编码开发工作。三.具体内容1.文件结构1.1文件头1.2头文件的结构1.3定义
2、文件的结构1.4目录结构2.程序版式2.1空行2.2代码行2.3代码行内的空格2.4对齐2.5长行拆分.2.6修饰符的位置2.7注释2.8类的版式3.命名规则3.1共性规则3.2Windows应用程序命名规则3.3Linux应用程序函数命名规则4.表达式和基本语句4.1运算符的优先级4.2复合表达式4.3if语句4.3.1布尔变量与零值比较4.3.2整型变量与零值比较4.3.3浮点变量与零值比较4.3.4指针变量与零值比较4.4循环语句的效率4.5for语句的循环控制变量4.6switch语句4.7goto语句C/C++程序编码规范文件编号生效日期版次页次
3、5.常量5.1const与#define的比较5.2常量定义规则.6.函数设计6.1参数的规则6.2返回值的规则6.3函数内部实现的规则6.4其它建议6.5使用断言6.6引用与指针的比较.7重载和内联7.1普通函数重载7.2内联函数8.内存管理9类的构造函数、析构函数、成员函数与赋值函数9.1类的构造函数9.2成员函数10.类的继承和组合11.其他规范及建议11.1提高程序的效率11.2一些有益的建议C/C++程序编码规范文件编号生效日期版次页次1.文件结构每个C++/C程序通常分为两个文件。一个文件用于保存程序的声明(declaration),称为头文件
4、。另一个文件用于保存程序的实现(implementation),称为定义(definition)C++/C程序的头文件以“.h”为后缀,C程序的定义文件以“.c”为后缀,C++程序的定义文件通常以“.cpp”为后缀。1.1文件头头文件和定义文件的开头包含一个版权和版本声明的注释块,主要内容有:(1)公司名、地址、版权信息(2)文件名称,标识符,摘要,文件描述(3)当前版本号,作者/修改者,完成日期(4)版本历史信息/**Copyright(c)2008,新达通公司*Allrightsreserved.**文件名称:filename.h*摘要:简要描述本文件
5、的内容*文件描述:***当前版本:1.1.2*作者:输入作者(或修改者)名字*修改内容:*完成日期:2008年8月20日**版本历史信息*/版本标识:采用<主版本号>.<次版本号>.<修订号>来命名自己产品的编号。1.2头文件的结构文件头预处理块#include#define常量C/C++程序编码规范文件编号生效日期版次页次全局宏代码全局数据类型全局变量外部函数和变量全局函数模板【规则1-2-1】为了防止头文件被重复引用,应当用ifndef/define/endif结构产生预处理块。【规则1-2-2】用#include格式来引用标准
6、库的头文件(编译器将从标准库目录开始搜。【规则1-2-3】用#include“filename.h”格式来引用非标准库的头文件(编译器将从用户的工作目录开始搜索)。【建议1-2-1】头文件中只存放“声明”而不存放“定义”【建议1-2-2】不提倡使用全局变量。【建议1-2-3】每个节应该前加一个注释块,一个文件可以包含这些节的全部或部分,空节能够被缺省,但是如果一个节包含了,它必须位于它的位置上。//文件头#ifndef__RAILSRV_H__//预处理块,防止头文件被重复引用#define__RAILSRV_H__#include//引
7、用标准库的头文件#include…#include"sqlsrv.h"//引用非标准库的头文件…#defineMAX_TEXTLEN(32*1024)//#define常量#defineRAILWAY_SEG"4040"…#ifndefMAX//全局宏代码#defineMAX(X,Y)(((X)>(Y))?(X):(Y))#endif…/**********************************************************************************全局数据类型*************
8、*********************************
此文档下载收益归作者所有