注释的重要性
注释是告诉读者程序编写目的及其工作原理的主要机制。当决定某个注释是否合适的时候,请先问下自己:“对于第一次读此程序的程序员而言,他们想要知道什么”,请记住,在编写了该代码一到几个月后,这个程序员也可能是自己。
在每个块或过程的开始放置注释,这些应该解释块或过程要做些什么。
对于过程,列出变量与参数将要被该过程读取(输入)以及那个变量或参数将要被过程写入(输入)。
注释一般采取的两种方式:对一个程序块注释和对一行程序注释
/*比较x,y大小*/
if(x>y)
{
t=x;
x=y;
y=t; /*交换x,y*/
}
注释是一件很好的事情,但是过多的注释也是危险的,不要试图区解释你的代码是注释如何如何的好。你应该将代码写得更好,而不是花费大量的时间去解释那些糟糕的代码。
通常情况下,你的注释是说明你的代码做些什么,而不是怎么做的。而且,要试图避免将注释插在一个函数体里。假如这个函数确实很复杂,你需要在其中有部分的注释,最好还是把复杂的函数拆分成几个简单的函数。也可以将注释写在函数前,告诉别人它做些什么事情,和可能为什么要这样做。
缩进风格:
目的:使程序结构清晰
对于函数,选择,循环控制
在进入下级的程序段时,用TAB键将下级的程序段向后缩进一段位置。
缩进的大小是为了清楚的定义一个块的开始和结束,特别是当你已经编写了很长的代码时,你会发现一个大的缩进格式使得你对程序的理解更容易.因为程序更有层次感,可以
最快的找到需要查看的程序块。
附件信息:
使用8个字符的缩进使得程序易读,就是它能在你将程序变得嵌套层数太多的时候给你警
告。这个时候,你应该修改你的程序,太多的嵌套对于程序执行的效率和易读性都是致
命的杀手,可以考虑使用函数或者改变程序结构
函数样式:
int fother()
{
程序块
if(...)
{
程序块
}
else
{
程序块
}
for(...)
{
程序块
}
}
命名规则:
大写:保留字 内置函数 预定义类型 关键字
小写:对象名
大小写混合拼写:变量名 t_StudentRecord
变量命名的规则
作为一个浩大的工程,我使用的是匈牙利命名法------在变量名前面加上相应的小写字
母的符号标识作为前缀,标识出变量的作用域,类型等。这些符号可以多个同时使用,
顺序是先m_(成员变量),再指针,再简单数据类型,再其他。例如:m_lpszStr, 表示
指向一个以0字符结尾的字符串的长指针成员变量。
函数
函数应该短小而迷人,而且它只作一件事情。它应只覆盖一到两个屏幕,并且只作一件
事情,而且将它做好。
一个函数的最大长度和函数的复杂程度以及缩进大小成反比。于是,如果你已经写了简
单但长度较长的的函数,而且你已经对不同的情况做了很多很小的事情,写一个更长一
点的函数也是无所谓的。
然而,假如你要写一个很复杂的函数,而且你已经估计到假如一般人读这个函数,他可
能都不知道这个函数在说些什么,这个时候,使用具有描述性名字的有帮助的函数。
另外一个需要考虑的是局部变量的数量。他们不应该超过5-10个,否则你有可能会出错
。重新考虑这个函数,将他们分割成更小的函数。人的大脑通常可以很容易的记住7件不
同的事情,超过这个数量会引起混乱。你知道你很聪明,但是你可能仍想去明白2周以前
的做的事情。
空格与空行
不要让自己的程序过于拥挤,这样同样影响可读性,善于使用空格区分一句程序中的变量,符号,表达式等,使他们对照整齐或者更清晰。善于使用空行区分程序块。
例如:
name = "young";
age = 21;
college = "ZIT";
例如:
if ( (x>100) || (x<0) )