Deutsch
Germany.ruФорумы → Архив Досок→ Программирование

Где найти старый компилятор для C# 4.0

16.03.19 17:58
Re: Где найти старый компилятор для C# 4.0
 
AlexNek патриот
AlexNek
где в вашем коде использование closure?

Вот

var closure = new Closure();

....

closure.i = i;

var action = new Action(closure.Action);

actions.Add(action);


Можно было оставить DisplayClass, но это тоже ничего не меняет ведь компайлер "разворачивает" лямбду в подобный код.

Понятно, что вы смотрите на это с какой то другой стороны. Но пока не могу догнать с какой.


Я имел в виду следующее:

так вроде никак не получится.


15.8.4 The foreach statement

The foreach statement enumerates the elements of a collection, executing an embedded statement for each

element of the collection.

foreach-statement:

foreach ( type identifier in expression ) embedded-statement

я думал что так


foreach(int j in ...) {j=0; ...}

В С# 7.3 вроде поведение как то изменили, но еще не игрался


Почему это?

Отчего в Яве так не знаю. В шарпе foreach коппайлер "переписывает". Да и стандарт не позволяет The iteration variable corresponds to a read-only local variable https://www.google.com/url?sa=t&rct=j&q=&esrc=s&source=web...

Вот если тут коммент убрать так даже компилится не будет

https://paiza.io/projects/tEMtl6riuHO1bb1LK97ejQ?language=...

 

Перейти на