布局与注释
布局
- 基本的缩排为4。
for (i = 0; i < nElements; i++)
a[i] = 0;
复制代码
缩排为1不明显;缩排大于4当嵌套深时,代码南阅读且一行代码被分割的机会加大。2、3与4是较好的选择。
- 块的缩排应该使用下面的例1(java默认编排方式)或例2的布局,但不可以使用例3。函数和类的块必须使用例2的布局。建议使用例2。
while (!done) {
doSomething();
done = moreToDo();
}
复制代码
while (!done)
{
doSomething();
done = moreToDo();
}
复制代码
while (!done)
{
doSomething();
done = moreToDo();
}
复制代码
例3额外的缩排并没有强调程序的逻辑结构,例1与例2很清晰。
- 类的申明应该使用如下的形式:
class SomeClass : public BaseClass
{
public:
...
protected:
...
private:
...
}
复制代码
遵循块的通用规则。
- 函数或过程的开始、结构的定义及循环,判断等语句中的代码都要采用缩进风格。
- 函数的申明应该使用如下的形式:
void someMethod()
{
...
}
复制代码
- 各类if-else语句应该使用如下的形式:
if (condition)
{
statements;
}
if (condition)
{
statements;
}
else
{
statements;
}
if (condition)
{
statements;
}
else if (condition)
{
statements;
}
else
{
statements;
}
复制代码
下面部分遵循块的通用规则,但是else语句与前一个if或else语句的右括号在同一行:
if (condition)
{
statements;
}
else
{
statements;
}
复制代码
这等效于Sun的推荐。这种方法的选择考虑是更好的方式将每部分if-else写在文件的多行内。这使得操纵语句更容易,如移动else周围的内容。
- for 语句应该使用如下的形式:
for (initialization; condition; update)
{
statements;
}
复制代码
遵循块的通用规则。
- 空的for语句应该使用如下的形式:
for (initialization; condition; update)
;
复制代码
- while 语句应该使用如下的形式:
while (condition)
{
statements;
}
复制代码
遵循块的通用规则。
- do-while 语句应该使用如下的形式:
do
{
statements;
} while (condition);
复制代码
遵循块的通用规则。
- switch语句应该使用如下的形式:
switch (condition)
{
case ABC :
statements;
// Fallthrough
case DEF :
statements;
break;
case XYZ :
statements;
break;
default :
statements;
break;
}
复制代码
每个case关键字的缩进与switch语句相关作为一个整体,这样突出显示switch语句。注意在每个:之前使用格外的空白符。当对应的case语句没有break语句时,需要显式的注释说明,防止因为无意漏加。
- try-catch语句应该使用如下的形式:
try
{
statements;
}
catch (Exception exception)
{
statements;
}
复制代码
部分遵循通用块的规则。对于if-else语句使用的闭括号规则同样适用于try-catch语句。
- 单一的if-else,for或while语句一般可以不用大扩号。
if (condition)
statement;
while (condition)
statement;
for (initialization; condition; update)
statement;
复制代码
通用的推荐(包括Sun Java推荐在内) 这种情况总是使用大括号。但是,大括号作为语言机制是用于分组多条语句的,对单一语句使用是多余的。
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END