条款26:尽可能延后变量定义式的出现时间
在使用某个变量之前再去定义这个变量,而不是很早就定义这个变量。这样做主要有两个好处。首先,程序员在阅读代码时可以立刻找到他的定义,而不是要翻阅代码寻找定义。也可以避免在前面定义了变量却在后面忘记使用的情况。另一个原因是可以节省资源。
另外书中提到了在循环中定义变量的问题。
for(int i = 0;i<10;i++){ num d(a); //使用d } num d; for(int i = 0;i<10;i++){ d = a;//使用d }
考虑上面两种定义变量的方法。如果定义放在类外,那么只需要构造函数和析构函数各构造一次,赋值函数执行n次。而在循环内需要各执行n次。定义放在循环内还有一个优点是可以限定变量的作用域。