高质量C/C++编程指南--程序版式
此系列文章实为对《高质量程序设计指南--C++/C语言》的重点摘要总结
本篇总结的为程序版式:
良好的代码版式有助于阅读代码和进行维护。可以设想,没有良好的排版的文章,估计读者看不到一半就没耐心继续往下读了。代码更是如此,没有好的编程风格,写出来的代码只会苦涩,让人难以阅读和理解。所以学习良好的编程风格是百利而无一害的!
利用好空格与换行(这两者能使我们代码的意思更加的清晰)
空行不会浪费内存,所以不要舍不得,但也不能滥用!一般我们会在以下情况添加空行(或进行换行):
尽量在定义变量的同时对该变量进行初始化,这样做可以避免引用了未被初始化变量带来的错误。
合理地使用空格,使变量名或关键字与其他的字符保持一定的距离。这样做,就避免了因代码的过度紧凑带来 “审美疲劳” 。
同样,关于如何合理使用空格,有以下的建议:
int width; // 宽度int height; // 高度x = a + b;y = c + d;if (width <= height){function();}// 空行for (int i=0; i<n; i++){function();}void function(int i, int j);if ((a>=b) && (c<=d)){//... }x = a < b ? a : b;a[5] = 0;a.function();a->function();
长行拆分:
代码行的最大长度控制在70至80字符内。虽然如此,但我们可设想如果一整行都写满了,无疑会为我们阅读代码和维护带来不便。所以就需要进行长行拆分。
if ((very_longer_variable1 >= very_longer_variable12) && (very_longer_variable3 <= very_longer_variable14) && (very_longer_variable5 <= very_longer_variable16)){function();}for (very_longer_initialization; very_longer_condition; very_longer_update){function(); }
注释(通常用于):
注释建议与规则:
if (){//代码行while (){//代码行} // end of while//代码行} // end of if
类的版式(主要有两种):
建议采用“以行为为中心”。这样不仅让自己在设计类时思路清晰,而且方便别人阅读。因为用户关心的是接口。