–Wunusedvariables编译器说错误

–Wunusedvariables编译器说错误,第1张

概述–Wunusedvariables编译器错误

最近我开始用C + +编程(我来自Java,这花了我一点点改变哈哈)。 在windows下一切正确。 问题是,我切换到linux,这是我有问题的编译器。 通常当你声明一个variables而没有使用时,编译器会显示一个“警告”,表示这个variables没有被使用,但是我(在linuxmint 15下)把我当作“错误”抛出,并且没有编译:C不知道有没有人发生过这样的事情,但是在制作大型节目时(不止一节课)我生病了。

一个小例子:

未使用的变量警告是调用GCC的结果

g++ -Wunused-variable ...

如果是这种情况,请不要指定参数。 或者是因为-Wall:

g++ -Wall ...

在这种情况下,指定-Wno-unused-variable

它被当作一个错误被抛出,因为你也有“错误”的论点。

这个警告有几个原因:可以在C ++中的作用域之间“隐藏”变量,因此,当有两个相同名称的变量时,未使用变量的常见原因是。

int i = 5; for (int i = 0; i < 10; ++i) { // << this is SECOND variable called i that hIDes the prevIoUs } if (day == "Monday") { int i; // << you can't see the second i here,this is a third that also hIDes the first. ... } // std::cout << "i = " << i << std::endl; // we can see original i again here

这里有两个变量叫“我”。 如果您取消注释最后一行,则会打印5,与另外两个名为“i”的变量无关。

没有std :: cout,虽然,原来,外,我从来没有使用过。 也许最后的“int i”是一个错误。

另一个常见的问题涉及到在C ++中具有全局变量的能力

int Whoops; // GLOBAL: NEVER EVER touch THIS. int func() { int whoops; // LOCAL: ALWAYS touch THIS. Whoops = 42; // >W<hoops! }

你会收到一个警告,“哎呀”是一个未使用的变量,以帮助检测你修改了错误的变量。

总结

以上是内存溢出为你收集整理的–Wunusedvariables编译器说错误全部内容,希望文章能够帮你解决–Wunusedvariables编译器说错误所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1267619.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-08
下一篇 2022-06-08

发表评论

登录后才能评论

评论列表(0条)

保存