对于循环,检查将相同的对
For loop, checking pairs that would be identical
我使用双for循环来循环我的对象列表,并检查我在位置I的机器人是否与在位置j的机器人发生碰撞。我成功地检查了ii、jj组合,但这些组合不应该完成,但我希望在I、j出现时处理j、I没有出现的问题。例如,(1,1)不应该发生,但它被检查为(1,4),但当它重新出现时,IDONT希望发生(4,1)。
想法:
我以为发生这种情况时会有一个临时状态,但当多个机器人发生多次碰撞时,它就会爆炸。有什么办法可以避免这个问题吗?我的问题不是关于模块化或使用双for循环。
for(int i = 0; i < count; i++)
{
for(int j = 0; j < count; j++)
{
if(i != j)
{
if(vbot[i]->CollidedWith(vbot[j]))
{
vbot[i]->DoBattleWith(vbot[j]);
}
}
}
}
只需将内部循环更改为
for(int j = i + 1; j < count; j++)
并去掉CCD_ 1语句。
通过这些修改,代码将只考虑(i, j)
对,使得i < j
。
相关文章:
- 使用for循环检查数组中的重复项
- 在做一段时间内检查字符的无限循环
- 对于等待以 std::future wait() 返回的函数的 CPU 使用率或检查标志在循环中休眠一段时间哪个更好?
- C++ - 使用用户输入的字符串数据检查结构字符串数据(无限执行 while 循环)
- 对于检查 >=0 终止条件时的循环索引类型
- 相同的 for 循环适用于其他项目,但不适用于此项目。为什么?
- 如何创建一个循环,该循环检查每次迭代并在每次迭代后从头开始
- 十进制到二进制的实现不能完全适用于我大学的检查器。问题或提示可能是什么
- 将函数应用于特征矩阵中的所有元素,而无需循环
- 输入数据类型检查循环未按预期工作 (C++)
- 检查元素是否存在于二维矢量中
- Openmp-嵌套用于循环
- 有类似于循环(圆形)迭代器的东西吗?
- 我是否必须求助于循环,以比较C 中的两个2D阵列
- 在检查 while 循环中与"运算符!="不匹配
- C++嵌套用于循环
- C++嵌套用于循环-内积-marix乘法
- 检查While循环中的文件状态
- 为什么for循环中定义的变量只存在于循环内部
- C++ - 使用 'i' 检查 for 循环中的不同变量