menthod Reverse() 확장을 사용하고 있지만 아무 것도하지 않는 것 같습니다. MSDN은 지연된 실행으로 구현되지만, 이것을 작동시키지 못한다고 명시하고 있습니다.대기열 반전
내가 어떻게 부르는지 여기에 있습니다.
이 방법은 지연된 실행을 사용하여 구현됩니다
Queue<T> currentPath = new Queue<T>(); currentPath.Enqueue(someValue); currentPath.Enqueue(someValue2); currentPath.Reverse();
이것은 MSDN의 말씀입니다. 즉시 반환 값은 작업을 수행하는 데 필요한 모든 정보를 저장하는 객체입니다. 이 메서드가 나타내는 쿼리는 GetEnumerator 메서드를 직접 호출하거나 Visual C#에서 foreach를 사용하거나 Visual Basic에서 For Each를 사용하여 개체가 열거 될 때까지 실행되지 않습니다.
GetEnumerator를 호출하여 무슨 뜻인지 모르겠습니다. 나는 단순히 수행하여 아무 소용이와 함께 다음과 같은 것을 시도했다 :
내가 여기 아주 어리석은 일을하고 있어요 느낌을했습니다currentPath.Reverse();
currentPath.GetEnumerator();
이 어떤 도움을 주시면 감사하겠습니다!
아, 내가 얼마나 바보. Reverse에서 목록을 호출 할 때 Reverse가 List의 확장 메서드가 아니므로 원본을 수정하기 때문에 혼란 스럽습니다.감사합니다 :) – Benzino