Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
以下是我的代码:
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 变量的值没有变化?
rValue is false
我怀疑在你的循环中某处你有声明bool rValue。所以它改变了rValue循环范围。不是父范围之一。
bool rValue
rValue
并且如果您在到达内部赋值语句之前退出循环,它将不会生效。您可以在调试器中检查或std::cout在分配前放置
std::cout