Optimization 有条件地为循环中的int变量赋值(优化)

Optimization 有条件地为循环中的int变量赋值(优化),optimization,variable-assignment,Optimization,Variable Assignment,假设我们有二维布尔数组,它们代表简单游戏的地图。如果某个游戏对象占用了数组中的每个单元格,则可以将其设置为true(否则为false) 我们希望根据对象的行为更新map in循环。比如说(由于某些原因),我们不能只更新贴图的某些区域,我们必须迭代数组中的每个单元格,如果对象改变了位置,则取反它的值 我们知道,在每个阵列的更新中,只有很少的更改,但阵列是巨大的。现在问题来了。 什么是最理想的 (1) 这: for(int i=0;i

假设我们有二维布尔数组,它们代表简单游戏的地图。如果某个游戏对象占用了数组中的每个单元格,则可以将其设置为true(否则为false)

我们希望根据对象的行为更新map in循环。比如说(由于某些原因),我们不能只更新贴图的某些区域,我们必须迭代数组中的每个单元格,如果对象改变了位置,则取反它的值

我们知道,在每个阵列的更新中,只有很少的更改,但阵列是巨大的。现在问题来了。 什么是最理想的

(1) 这:

for(int i=0;i
(2) 这:

for(int i=0;i
(3) 或者可能是这样:

for(int i=0;i

我认为(1)是这里最糟糕的解决方案。所以(2)对(3)。

3号。没有理由像在#2中那样编写代码。您可以毫无问题地删除if。

我认为2和3之间的差异将非常小,因此差异将不重要,因此请使用最简单的方法(3)。这似乎与这个问题相符