Как указать лямбда-функции захватывать копию вместо ссылки в C#?

Единственное решение, которое capture мне удалось найти, - это csharp сначала сделать локальную lambda-functions копию:

for (int i = 0; i < 10; ++i)
{
    int copy = i;
    actions.Add(() => Console.WriteLine(copy));
}

Но мне сложно понять, почему lambda-functions размещение копии внутри цикла lambdaexpression for отличается от использования c#.net лямбда-захвата i.

c#

loops

lambda

capture

2022-11-14T17:12:37+00:00
Вопросы с похожей тематикой, как у вопроса:

Как указать лямбда-функции захватывать копию вместо ссылки в C#?