为什么我的foreach比我的for循环更快?

时间:2015-09-02 09:51:36

标签: c# performance loops

std::forward

结果:

  

代表:0,7046522秒
  foreach:0,05508682秒

为什么我的foreach更快?我认为我的for循环会比foreach更快

1 个答案:

答案 0 :(得分:3)

原因在article详细解释。它说那个

  

在微基准测试中,引入额外的局部变量   foreach-loops可以影响性能。但是,如果那些本地的   变量在循环体中重复使用几次,它们可以导致   绩效改善。

     

因此:如果数组必须,for循环比foreach循环快   每次迭代只能访问一次。

您可以通过在循环中包含一些操作并再次运行来实现这一点。