考虑带有1000行的Gridview
。预先声明(foreach循环)迭代器会影响性能吗?
如果我想通过GridView的每一行迭代,我能做到这一点有两种方式:
foreach (GridviewRow row in gridview1.Rows) {
// the variable row is declared in the body of the for loop.
// do stuff with current row
}
另一种方法是:
GridviewRow row;
foreach(row in gridview1.Rows) {
// here, the variable row was declared before for loop.
// do stuff with current row.
}
我想知道,如果两个他们将在内存分配/ CPU性能等方面比其他方面“更好”。
如何回合简单地尝试两个并检查生成的IL?我真的不确定什么可以最小化地担心效率差异,如果有的话,在其中一个或另一个之间...... – InBetween
我的意思是:如果我使用某种方式或其他方式会更好吗?编辑我的问题以清除混淆。 @InBetween – Ahmad
性能?在.NET 4之前,一个简单的'foreach'产生了对XNA的巨大打击的拳击垃圾; Mono和Unity3D。只有团结[最近解决了这个](https://unity3d.com/learn/tutorials/topics/performance-optimization/optimizing-garbage-collection-unity-games)。你可能需要考虑使用'for'循环,具体取决于你的.NET版本 – MickyD