brew编程规范.doc

  1. 1、本文档共7页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
brew编程规范

C语言编程规范要求(试行) 修订历史记录 日期 版本 说明 作者 2009-6-5 1.2 罗剑锋 2009-5-6 1.1 罗剑锋 绪论: 基本要求:简单是最好的。 可读性要求:程序是给人看的。 命名规则:好名字是成功的开始。 程序注释:要养成习惯 程序结构和容错性: 编辑排版:让程序变漂亮。 开发工具:统一开发工具 开发文档:必须的文档 基本要求: 程序结构清析,简单易懂,单个函数的程序行数不超过1行打算干什么,要简单,直接了当,代码精简。尽量使用标准库函数和公共函数。不要随意定义全局变量,尽量使用局部变量可读性第一,效率第二不要随意定义全局变量,尽量使用局部变量基本原则是:变量名=属性+类型+对象描述标识符应当直观且可以拼读,可望文知意,不必进行“解码”。命名规则尽量与所采用的操作系统或开发工具的风格保持一致。程序中不要出现仅靠大小写区分的相似的标识符。例如: int x, X; // 变量x 与 X 容易混淆 void foo(int x); // 函数foo 与FOO容易混淆 void FOO(float x); 程序中不要出现标识符完全相同的局部变量和全局变量,尽管两者的作用域不同而不会发生语法错误,但会使人误解变量的名字应当使用“名词”或者“形容词+名词”。例如: float value; float oldValue; float newValue;常量名全部大写,多个单词用’_’连接 程序注释: 必须写注释 一定要写注释 别忘了写注释 保持注释与代码一致。每个源程序文件,都有文件头说明。示例:下面这段头文件的头注释比较标准,当然,并不局限于此格式,但上述信息建议要包含在内。////////////////////////////////////////////////////////////////////// // [文 件 名]: socket.h // [用 途]: socket连接类 // [作 者]: 刘军强 (Will) // [日 期]: // [说 明]: // [相关文件]: // [修改历史]: // ///////////////////////////////////////////////////////////////////// 每个函数,都有函数头说明。 uint32 nBufferSize //nBufferSize=MOBILE_ID_LEN+1 ); 主要变量(结构、联合、类或对象)定义或引用时,注释能反映其含义。常量定义(DEFINE)有相应说明处理过程的每个阶段都有相关注释说明。If(bActive) //激活 {… } else //非激活 {… } 在典型算法前都有注释。全局变量要有较详细的注释,包括对其功能、取值范围、哪些函数或过程存取它以及存取时注意事项等的说明。_u_rans_errorcode=0; /*全局变量,传送的错误代码,?0~255, MMI_GetTransErrorCode()中使用到了,0:SUCCESS? 1:list error。*/ 注释可以与语句在同一行,也可以在上行。空行和空白字符也是一种特殊注释。一目了然的语句不加注释。注释行数(不包括程序头和函数头说明部份)应占总行数的 1/5 到 1/3 。循环、分支层次不要超过五层。禁止出现两条等价的支路。GOTO语句。用 IF 语句来强调只执行两组语句中的一组。用 CASE 实现多路分支。避免从循环引出多个出口。避免不必要的分支程序首先是正确,其次是优美无法证明你的程序没有错误,因此在编写完一段程序后,应先回头检查。改一个错误时可能产生新的错误,因此在修改前首先考虑对其它程序的影响。所有变量在调用前必须被初始化。对所有的用户输入,必须进行合法性检查。不要比较浮点数的相等如: 10.0 * 0.1 == 1.0 , 不可靠程序与环境或状态发生关系时,必须主动去处理发生的意外事件,如文件能否逻辑锁定单元测试也是编程的一部份,提交联调测试的程序必须通过单元测试。重复使用的完成相对独立功能的算法或代码应抽象为公共控件或类。公共控件或类应考虑思想,减少外界联系,考虑独立性或封装性。公共控件或类应建立使用模板。CMyMenu::~CMyMenu() {//下面缩进 for(int i=0; im_nItemCnt; i++) {//下面缩进 FREE_IMG((m_pItem+i)-pImage); If(m_num) {//下面缩进 …… } FREEIF(m_pItem); FREE_IMG(m_pRoom); FREE_IMG(m_pRoomSel); //add by hyx 2007-

文档评论(0)

xcs88858 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档