Компилятор компилирует цикл foreach
во что-то вроде цикла for
, когда ] foreach
используется с массивом. А компилятор компилирует цикл foreach
во что-то вроде цикла while
, когда foreach
используется с IEnumerable
или IEnumerable
. Значит ли это, что foreach
является чисто синтаксическим сахаром
? Или в этом есть что-то сложное?
Знает ли CLR о foreach
? Есть ли что-нибудь, специально разработанное для foreach
в коде MSIL?