以下是我的代码:
bool rValue = false;
for(int i=0; i < 10 ; i++)
{
some code...
...
...
rValue = true
}
std::cout << "rValue is " << rValue << std::endl;
以上代码的输出是rValue is false
。为什么?为什么 rValue 变量的值没有改变?
最佳答案
我怀疑在你的循环中某处你有声明 bool rValue
。所以它改变了循环范围下的 rValue
。不是父范围。
而且如果你在到达内部赋值语句之前退出循环,它也不会生效。您可以在调试器中检查或在赋值前放置一个 std::cout
关于c++ - 如何更改for循环之前声明的变量值并尝试在C++中更改for循环中的值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12035802/