Я читал много раз, когда foreach выполнял бит менее эффективно, чем для массивов (потому что ему нужно было построить/использовать итератор), и люди выступали за использование вместо циклов.Не оптимизирует ли компилятор C# foreach?
Я немного удивлен, что компилятор не оптимизирует его (aka: преобразование его в простой код кода IL). Компилятор visual studio 2015 делает это для нас (возможности C# 6), почему бы не исправить это «не так хорошо известное» неправильное использование foreach?
Это звучит не так, и я хотел бы попросить людей, выступающих против 'foreach', поддержать свои требования, а не другие здесь, на SO. Откуда вы узнали об этом? – hvd
Если есть измеримая разница в производительности - это важно *? Вместо того, чтобы микро-оптимизировать цикл через массивы, я обычно ставил под вопрос использование массивов в первую очередь. –
Возможный дубликат [В .NET, цикл которого работает быстрее, «для» или «foreach»?] (Http://stackoverflow.com/questions/365615/in-net-which-loop-runs-faster-for- или-Еогеасп) – HugoRune