对于简单的一个for循环,如:
for(int i =1; i<100; i++)
{
//proceeding
}
从语法上来讲,上述语句完全没有问题。但是可读性及可扩展性差,为什么呢?
因为使用了100这个具体的值作为循环上届,其意义不明确,i与100比较究竟是什么意义,不知道,所以不方便他人理解你的程序
另一方面,如果程序中有多处这样的100,一旦程序将来发生更改(假设100要改为1000),那么就需要去修改每一处的代码,势必要增加无谓的工作量。
如何解决这个问题?
可以定义一个常量,并为它取一个见名知意的名字。
如 const int bufSize = 100;
将bufSize定义为常量并初始化为100,并且以后不允许修改bufSize的值。
PS:关于const变量
非const变量时默认extern的。意思是另一个文件可以声明这个变量,然后使用。
而const变量如果想为其他文件所使用,必须显式定义为extern。因为const变量默认是作为定义该变量的文件的局部变量。