주기의 표지 변수 : 이상한 문제
예상과 달리이 코드는 예상 시퀀스 0, 2, 4, 6, 8 대신 5 "10"을 인쇄합니다.
>> 질문 : 사이클의 캡처 변수
의 최종 값을 인용합니다. 고유 값을 캡처하여 예상 출력을 생성합니다.
List<Action> actions = new List<Action>();
int variable = 0;
while (variable < 5)
{
actions.Add(() => Console.WriteLine(variable * 2));
++variable;
}
foreach (var act in actions)
{
act.Invoke();
}
위 내용은 내 C# 루프가 잘못된 변수 값을 캡처하는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!