Софтуерно Инженерство
Loading...
WestsideBG avatar WestsideBG 55 Точки

Въпрос относно Foreach Loop

Здравейте, може ли някой да ми обясни защо когато итерирам през колекция с Foreach не мога да променям променливата на която се намирам ? 

Пример:

int[] nums = 1,2,3,4,5

foreach (var num in nums)
{
 num += 1;
}

Exception: Cannot assign to num because it is a 'foreach iteration variable'. 

Благодаря предварително. (Може въпроса да не е за този курс, но съм на Advanced, а не ми се бе случвало преди. Явно не ми е трябвало да го ползвам :D )

Тагове:
0
C# Advanced
TeodorStefanovPld avatar TeodorStefanovPld 1226 Точки

https://stackoverflow.com/questions/7838079/why-cant-we-assign-a-foreach-iteration-variable-whereas-we-can-completely-modi

 ако такива неща те спъват те чака грубо събуждане сега на с# fundamentals

foreach-a само чете така да се каже хвърля погледа на елементите не като for loop да итерира върху самите елементи.в линка са го обяснили добре.

1
WestsideBG avatar WestsideBG 55 Точки

Спъват е грубо казано :D Дали с for цикъл ще го направя или с lambda все тая просто исках да знам причината :D 

0
TeodorStefanovPld avatar TeodorStefanovPld 1226 Точки

да е ок. ама с това отношение да не можеш да си обясниш нещо простичко,или поне да намериш отговора за 1 мин в google ще ти е забавно на ооп и на базите.. нали ги гледах колегите в курсовете досега как изгърмяха накрая като стана сложно :D макар че сега на с# web ще е още по-забавно.

0