缘由:在VS2005和其余的一些编辑工具中均可以定义Tab键扩展成为几个空格键。不用 Tab键的理由是Tab键在不一样的状况下会显示不一样的长度。4个空格的距离从可读性来讲正好。函数
在复杂的条件表达式中,用括号清楚地表示逻辑优先级。工具
缘由:在有多层控制嵌套的时候,容易看清结构和对应关系。编码
if ( condition ) { DoSomething(); } else { DoSomethingElse(); }
不把多行语句放在一行上。spa
a = 1; b = 2; if (fFoo) Bar();
更严格地说,不要把不一样的变量定义在一行上。代码规范
不使用单个字母的变量,像i、m、n,用index等来替代,用于循环迭代的变量除外。code
for (int i = 0; i < count; i++) {}
下划线用来分隔变量名字中的做用域标注和变量的语义,如:一个类型的成员变量一般用m_来表示。blog
全部的类型/类/函数名都用Pascal形式,全部的变量都用Camel形式:即全部单词的第一个字母都大写。作用域
类/类型/变量:名词或组合名词,如Member、ProductInfo等。get
函数则用动词或动宾组合词来表示,如get/set; RenderPage()。 it
复杂的注释应该放在函数头,不少函数头的注释都是解释参数的类型等的,若是程序正文已经可以说明参数的类型in/out等,就不要重复!
注释也要随着程序的修改而不断更新,一个误导的(Misleading)注释每每比没有注释更糟糕。
另外,注释(包括全部源代码)应只用ASCII字符,不要用中文或其余特殊字符,它们会极大地影响程序的可移植性。