c++ - 未声明未使用的变量。 gcc 取笑我?

标签 c++ macos gcc compiler-errors

<分区>

我的代码中有下一行:

const int xxx = hhh.IR(); // line 234
if( !aaaaaaa[iT][xxx] ) // line 235

编译器提示:

/FILE.cxx:234:21: warning: unused variable 'xxx' [-Wunused-variable]
/FILE.cxx:235:30: error: 'xxx' was not declared in this scope

(这是在逗我吗?)这怎么可能?

我检查了两个 xxx 使用相同的字符,简单地处理一个 xxx 并用它替换另一个。

附言: 我有

  • 海湾合作委员会 4.7.3
  • OSX 10.9。

最佳答案

当第一行和第二行的范围不同时,这是可能的。

这里是一个会给出此类错误的代码示例:

if ( y == z )
  const int xxx = hhh.IR();
  if( !aaaaaaa[iT][xxx] )

等于:

if ( y == z ) {
  const int xxx = hhh.IR();
}
if( !aaaaaaa[iT][xxx] )

所以修复是添加大括号:

if ( y == z ) {
  const int xxx = hhh.IR();
  if( !aaaaaaa[iT][xxx] )

关于c++ - 未声明未使用的变量。 gcc 取笑我?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20380681/

相关文章:

c - 是否可以将内存位置与缓存 Hook

c++ - 如何在 Eclipse 中启用 qt4 代码完成?

c++ - 在 C++ 中创建一个从命令行获取参数的程序

xcode - 在 MainMenu.xib 上将 NSViewController 作为工作表打开

c - Eclipse 项目不能包含 tchar.h

Wayland 上的 Qt 应用程序崩溃

c++ - vector 迭代器参数作为模板 C++

c++ - Uncrustify 在 Class::method 处破坏代码

macos - macOS Mojave 上的 gcc 损坏

objective-c - 如何在Cocoa中关闭蓝牙设备和声音设备?