foreach é puramente “açúcar sintático”?
O compilador compila umforeach
loop em algo como umfor
quando oforeach
é usado com uma matriz. E o compilador compila umforeach
loop em algo como umwhile
quando oforeach
é usado com umIEnumerable
ouIEnumerable<T>
. Então, isso significaforeach
é puramentesyntactic sugar
? Ou há algo sofisticado sobre isso?
O CLR sabe sobreforeach
? Existe algo projetado especificamente paraforeach
no código MSIL?