- 1、本文档共38页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
上海大学软件工程研讨
软件工程研讨3、源程序文档化变量、常量和函数的命名规范变量命名(Variable Names)变量名所有字母小写,单词之间用下划线(_)分开,类成员变量以下划线结束。普通变量命名(Common Variable Names)比如:string table_name; // 可以-使用下划线string tablename; // 可以-全部字母小写string tableName; // 糟糕-大小写混合类数据组成变量命名(Class Data Members)数据成员(又叫实例变量或者成员变量)的命名与普通变量一样,全部字母小写,可选的下划线分隔符,但应该以下划线结束。string table_name_; // 可以-以下划线结束string tablename_; // 可以结构体成员变量命名(Struct Variables)结构体成员变量和普通变量命名规则一致,且不像类成员变量以下划线结束。struct UrlTableProperties{ string name; int num_entries;}全局变量命名(Global Variables)全局变量的使用较为罕见,但当用到时,考虑以前缀g_开头或标以其他记号,以便与局部变量区分。常量命名(Constant Names)K后跟混合大小写的名称:kDaysInAWeek。所有编译时常量,不管是被声明为局部、全局还是作为类的成员,都应该遵守与其他变量命名有轻微差别的命名约定:k后跟单词首字母大写的名称:const int kDaysInAWeek = 7;函数命名(Function Names)正规函数名应该以大写字母开头,单词首字母大写,不使用下划线。如果函数可能因错误而崩溃,应该在函数名后加上OrDie。这仅适用于那些被产品代码调用或者正常操作有可能引起错误的函数。AddTableEntry()DeleteUrl()OpenFileOrDie()访问器和修改器(Accessors and Mutators)访问器和修改器(get和set函数)应该与它们关联的变量名匹配。下面显示了一个类的部分摘录,它有一个实例变量num_entriesclass MyClass{ public:...int num_entries() const{return num_entries;}void set_num_entries(int num_entries){num_entries = num_entries;}private: int num_entries_;};你也可以使用小写字母和下划线来命名非常短小的内联函数。比如,如果一个函数的调用开销很小,在循环调用时,没必要缓存其值,这时,小写字母命名是允许的。对文件、类、函数、变量和逻辑功能段进行注释的规范 文件注释(File Comments)每个文件都应该提供版权信息,然后是文件内容的综合性描述。合法公告和作者信息行(Legal Notice and Author Line)每个文件都应依次包括以下条目,1、版权声明(比如Copyright 2008 Google Inc.);2、一个许可引用。选择适合你项目使用的许可引用(比如Apache 2.0、BSD、LGPL、GPL)3、作者信息行说明文件原始作者如果你对原始作者的文件做了实质性修改,可以在作者信息行加上你的名字。当其他开发者有问题时,这样可以方便他们正确地联系到修改者。文件内容注释(File Contents)每个文件都应该在其版权信息及作者信息后面和内容前面有一个内容描述性的注释。通常,头文件描述它所声明的类的目的及用法。而源文件则应该包含更多有关实现和技巧性算法的讨论信息。但如果你觉得这些信息对于头文件的阅读者更有用,可以将其放在头文件中,但在源文件中应该注明其文档在头文件中。不要在头文件和源文件中重复注释,这样容易造成歧义。类注释(Class Comments)每个类定义都应该伴随有说明其目的和用法的注释。// 遍历GargantuanTable的内容。用法示例:// GargantuanTableIterator* iter = table-NewIterator();// for(iter-seek(“foo”);!iter-done();iter-next()){// process(iter-key(),iter-value();// }// delete iter;Class GargantuanTableIterator{...如果你在文件开始就已对类进行了详细描述,可以在类实现部分简单地声明“参见文件开始注释部分的完整
您可能关注的文档
- 七级历史上册课件《汉武帝推进大一统格局》(北师大)ppt.ppt
- 七级历史上册课件《昌盛的秦汉文化》(新人教)ppt.ppt
- 七级历史上册课件《夏商西周的兴亡》(新人教)ppt.ppt
- 七级历史上册课件《春秋战国的纷争》(新人教)ppt.ppt
- 七级历史课件《春秋战国的纷争》(新人教上册)ppt.ppt
- 七级地理上册第四第三节世界的聚落课件(张幻灯片)人教.ppt
- 步步高2014届高考政治二轮复习课件(新课标通用):必修4专题十哲学思想和唯物论、认识论分析.ppt
- 武汉市2016年元月调考物理试卷及答案分析.docx
- 七级地理下册《极地地区》ppt.ppt
- 七级地理下册东南亚(时“十字路口”的位置热带气候与农业生产)课件(新)新人教.ppt
最近下载
- 助贷公司培训.pptx VIP
- 2025年中国智慧园区行业发展白皮书.pdf VIP
- 旅居养老app项目融资计划书.pptx VIP
- DIP按病种分值付费专项绩效考核工作方案.docx VIP
- YB∕T 5084-2015- 化工用二氧化锰矿粉.pdf
- 光伏发电区土建工程质量验收及评定范围表.pdf VIP
- 血糖仪POCT培训课件.pdf VIP
- NB∕T 11000-2022 陆上风电场工程工程量清单计价规范(2-1).pdf
- 二《简单相信,傻傻坚持》课件(共33张PPT)中职语文高教版(2023)职业模块.pptx VIP
- 毕业论文(设计)—基于单片机的按摩器系统的设计与实现.pdf VIP
文档评论(0)