目前我正在使用Visual Studio的社区版本,但无法找到Watch Window或其等价物.在以前版本的Express studio中,可以选择在Debug下拉列表中打开Watch Window.
在 C++ 中,为什么range-for-loop从 1 开始而不是从 0 开始迭代?在这个例子中,你会期望它能够很好地迭代数字,但是它遇到了越界错误,因为 i 从 1 开始,以向量的大小结束。
vector<int> numbers2 = { 1,2,3,4,5 };
cout << numbers2.size() << '\n';
for (int i : numbers2) {
cout << numbers2[i] << endl;
cout << i << endl;
}
Run Code Online (Sandbox Code Playgroud)
要正确计算结果,必须重新编写
cout << numbers2[i - 1] << endl;
Run Code Online (Sandbox Code Playgroud)