一旦我找到一个在 x 中具有相同位置的对象,我希望两个循环都停止。
这是我的 C++ 代码:
for(int i = 0; i < sizeArray; ++i){
for(int j = i; j > 0; --j){
if (s[i].positionX == s[j-1].positionX){
s[i].positionY = s[j-1].positionY;
}
}
}
如果我使用break;
它只会打破内部 for 循环。阻止两者的最佳方法是什么?
选项:
- 将循环的索引设置为最大值(或最小值)以终止循环。
- 将所有这些放在一个函数中并使用 return。
- 使用 goto
- 使用 Lambda
- 将布尔停止代码设置为 true,break,然后监听 break 并跳出其他循环?
- ?