变量命名与注释

1. 函数命名,变量命名,文件命名要有描述性;少用缩写。

尽可能给有描述性的命名,别心疼空间,毕竟让代码易于新读者理解很重要。不要用只有项目开发者能理解的缩写,也不要通过砍掉几个字母来缩写单词。

好的代码:
int price_count_reader;    // 无缩写
int num_errors;            // “num” 本来就很常见
int num_dns_connections;   // 人人都知道 “DNS” 是啥

不好的代码
int n;                     // 莫名其妙。
int nerr;                  // 怪缩写。
int n_comp_conns;          // 怪缩写。
int wgc_connections;       // 只有贵团队知道是啥意思。
int pc_reader;             // "pc" 有太多可能的解释了。
int cstmr_id;              // 有删减若干字母。

变量名一律小写, 单词之间用下划线连接. 类的成员变量以下划线结尾, 但结构体的就不用

好的代码:
string table_name;  // 可 - 用下划线。
string tablename;   // 可 - 全小写。

不好的代码:

string tableName;   // 差 - 混合大小写。

2. 注释 : 注释的作用是为了弥补代码自身在表达上的不足;

注释固然很重要, 但最好的代码本身应该是自文档化. 有意义的类型名和变量名, 要远胜过要用注释解释的含糊不清的名字.

变量注释:
通常变量名本身足以很好说明变量用途. 某些情况下, 也需要额外的注释说明.

函数注释:
函数声明处注释描述函数功能; 定义处描述函数实现.
函数声明:

注释位于声明之前, 对函数功能及用法进行描述. 注释使用叙述式 (“Opens the file”) 而非指令式 (“Open the file”); 注释只是为了描述函数, 而不是命令函数做什么. 通常, 注释不会描述函数如何工作. 那是函数定义部分的事情.

函数声明处注释的内容:

函数的输入输出.
对类成员函数而言: 函数调用期间对象是否需要保持引用参数, 是否会释放这些参数.
如果函数分配了空间, 需要由调用者释放.
参数是否可以为 NULL.
是否存在函数使用上的性能隐患.
如果函数是可重入的, 其同步前提是什么?

实现注释:
对于代码中巧妙的, 晦涩的, 有趣的, 重要的地方加以注释.

行注释:

比较隐晦的地方要在行尾加入注释. 在行尾空两格进行注释.

更多信息可以参考 
google 开元项目风格指南
http://zh-google-styleguide.readthedocs.io/en/latest/google-cpp-styleguide/comments/

时间: 2024-10-26 18:04:53

变量命名与注释的相关文章

前端变量命名之规则

无论是从技术角度还是开发视角,对于web前端开发规范文档都有一定规范,本文就css3和html5的发展前景总结了一系列的web开发文档,仅供大家参考. 规范目的: 为提高团队协作效率, 便于后台人员添加功能及前端后期优化维护, 输出高质量的文档, 特制订此文档. 本规范文档一经确认, 前端开发人员必须按本文档规范进行前台页面开发. 本文档如有不对或者不合适的地方请及时提出, 经讨论决定后方可更改. 基本准则: 符合web标准, 语义化html, 结构表现行为分离, 兼容性优良. 页面性能方面,

变量、交互&注释、数字&字符串&布尔、格式化输出

变量 变量定义规范: 声明变量: name = "Neo Zheng"    # name为变量名(标识符),"Neo Zheng"是变量值. 变量定义规则: 1. 变量名只能是字母.数字或下划线的任意组合: 2. 变量名的第一个字符不能是数字: 3. 有些关键字不能声明为变量名.['and', 'as', 'print', ...... ] 因为这些关键词是Python的语法. 注:变量名中间不能有空格,但末尾可以有. 变量命名习惯: 1. 驼峰体: eg. Nu

变量命名大部分都是 fuck,shit ,这程序员老哥是被命名逼疯,还是戾气太重?

最近一个工作4年的老同事离职了,领导让我接手维护他的功能并把代码交给我. 我拿到代码一看,变量命名大部分都是 fuck,shit 之类的粗话,甚至 for 循环用于 break 的 label 也命名为 FUCK_FOREACH,JUnit 测试导出的文件也带有 Fuck 字样,而且通篇没有注释,应该就剩数据库的表命名没带粗话了... 我这里没有 code review,貌似领导也不知道,不知道那个老同事经历了什么,我的天!!! 你们会在代码里带粗话吗? 「 被命名逼疯的节奏 」 说真的,看到这

零基础学python-10.2 多目标赋值与变量命名规则

1.多目标赋值 >>> a=b=c='abc' >>> a,b,c ('abc', 'abc', 'abc') >>> 2.多目标赋值与共享引用 对于不可变对象是没有问题,但是对于可变对象,这里就有问题的了 >>> a=1 >>> b=a >>> b=a+1 >>> id(a) 505991632 >>> id(b) 505991648 >>>

JavaScript 变量命名规则

著名的变量命名规则Camel 标记法首字母是小写的,接下来的字母都以大写字符开头.例如: var testValue = 0, secondValue = "hi";Pascal 标记法 首字母是大写的,接下来的字母都以大写字符开头.例如: var TestValue = 0, SecondValue = "hi";匈牙利类型标记法 在以 Pascal 标记法命名的变量前附加一个小写字母(或小写字母序列),说明该变量的类型.例如,i 表示整数,s 表示字符串,如下

python变量命名规则

在Python中,变量标记或指向一个值.当遇到变量时,Python将其替换为指向值. >>> cost=2.99 >>> .1*cost 0.29900000000000004 变量命名规则: 变量名的长度不受限制,但其中的字符必须是字母.数字.或者下划线(_),而不能使用空格.连字符.标点符号.引号或其他字符. 变量名的第一个字符不能是数字,而必须是字母或下划线. Python区分大小写. 不能将Python关键字用作变量名. 对于  x=expr这样的赋值语句,可以

【转】变量命名(简短且无歧义)

---恢复内容开始--- 湾区日报上分享的一篇文章,文章的作者在Google设计Dart语言,就变量命名方面给了4点建议,文中也列出了好变量名.坏变量名的对比.不管作者的看法与你实际中的命名习惯是否一致,看完这篇文章,相信可以在变量命名方面有一些新的思考. 原文地址(康桑阿米达):http://journal.stuffwithstuff.com/2016/06/16/long-names-are-long/?utm_source=wanqu.co&utm_campaign=Wanqu+Dail

C++变量命名规则

转自:http://www.cnblogs.com/finallyliuyu/archive/2010/09/25/1834301.html 浅谈C++变量命名规则 不知道别的公司如何,反正我现在的公司对变量命名并没有一定的规范,唯一要求就是能简单易懂,但是,我想,这个多个程序员,大概每个人都有自己习惯的一套 命名规则吧,不过,要是并不通用的话,大概看别人的程序会很头疼吧,SO 为了别人看偶的程序不至于太头疼,偶决定找个通俗的命名法来参考下,于是,搜到了匈牙利命名法... 匈牙利命名法的来历和介

【基础篇】各类语言的变量命名规则

----------------------------------------------JAVA----------------------------------------------- JAVA-区分大小写:类名和接口名是首字母大写:变量和方法是驼峰式:包名完全小写:静态变量完全大写 1. Package(包)命名: 完全小写 | 例如net.ebseries.modules. 2. Class(类)命名:首字母大写 | 多个单词合成,要求每个单词的首字母也要大写,例如:DataFil