为什么声明但未使用的变量可能会导致错误?

1 c++

如果我声明一个变量但不在程序中稍后使用它,那么编译器会给我一个警告,因为"每个警告都不应该被忽略",为什么会出现警告?它怎么会导致错误?谢谢!

Vot*_*ple 6

首先,一个小问题:声明一个从未使用的变量是浪费内存,因此本身就是一个bug.

其次,更重要的是:你为编写一个你从未使用过的变量的声明而烦恼.如果你没有计划使用它,你就不会为了声明一个变量而烦恼,这表明你已经忘记了使用它!是否有可能在其位置键入错误的变量名称?是否有可能忘记执行一个关键计算,其结果存储在该变量中?

当然,您可能只是声明了最终不需要的东西,这就是为什么它是一个警告而不是错误,但很容易看到这种警告可以指向一个重要的缺失代码的情况,这确实是一个bug.

  • 第一点可能并不重要,因为大多数编译器都会对它进行优化,除非它是一个无法优化的ctor和dctor对象. (2认同)