优秀的程序版式:
空行的作用:
分割段落,使程序布局清晰,
空行不会浪费内存,但打印时会多消耗纸张。
建议:
1、每一个类声明后,函数定义结束后都要加空行。
2、函数体内,逻辑上密切相关的语句之间不加空行,其它地方则加空行。
代码行:
建议:
1、一行代码做一件事情:
定义一个变量;
写一条语句;
//写一条注释
2、if、for、while、do等语句独占一行,执行语句不得紧跟其后,不论执行多少语句都要加{},防止书写失误。
3、定义变量后立即初始化或在最近的地方初始化,防止忘记初始化带来程序错误(安全明患)或其他隐患。
代码行内的空格:
1、关键字后面跟空格,如const,int,inline,case防止无法辨析关键字;if,while,for等关键字后加空格再跟括号以突出关键字。
2、函数名以后紧跟括号不留空格,以区别关键字。
3、‘’‘(’后面不留空格,“)”“,”“;”前面不留空格。
4、“,”后面留空格,如func(x, y, z);“;”不是一行的结束符号时后面要留空格,如for (int i = 0; i < 10; i++)
5、二元操作符前后加空格,如加减乘除与或;
6、一元操作符前后不加空格,如自增自减;
7、[]、.、->、这类操作符前后不加空格
8、较长的for或if语句可进行换行使格式工整
对齐:
建议:
1、程序分界符{}应独占一行并位于同一列,同事与引用它们的语句左对齐。
2、{之内的代码块在其右边一个缩进处左对齐。
长行拆分:
建议:
1、代码行最大长度宜控制在70-80字符内,不应过长,
2、长表达式在低优先级操作符(如&&,||)处拆分成新行,操作符放在新行之首以突出,拆分出的长行做适当的缩进,使排班整齐易读。
修饰符*和&的位置:
建议:
1、靠近数据类型,避免引发误解,如int *p,a; char name,*pname;
注释:
c语言中注释为/…/,c++中程序块的注释常用/…/,行注释//…
注释通常用于:
1、版本版权声明
2、函数接口说明
3、重要代码行或段落提示
建议:
1、注释是“提示”而非文档,数量不可过多,样式需简单。
2、代码本身清楚时无需注释。
3、代码与注释保持一致,修改也需一致,无用注释需删除。
4、注释应准确移动无二义性
5、避免在代码中使用缩写
6、注释的位置应在代码相邻的上方或右方,不可在下方
7、代码较长且有多重嵌套时应在段落结束处加注释
类的版式:
1、以数据为中心:private的数据写在前面,public的函数写在后面。重点关注类的内部结构。
2、以行为为中心:public的函数写在前面,private的数据写在后面,重点关心类提供的服务,首选。