프로그래밍언어/C#
C#) 열거자와 반복자 / IEnumerator, IEnumerator<T>,GetEnumerator
HJH0825
2020. 3. 30. 09:16
열거자와 반복자
값들의 순차열으 반복하는 읽기 전용 커서이다. 구체적으로
System.Collections.IEnumerator
System.Collections.Generic.IEnumerator<T>
위 두가지 인터페이스 중 하나를 구현하는 객체이다.
Foreach문은 열거 가능객체를 반복한다.
열거 가능 객체는 순차열의 논리적 표현이다. 다음 두 조건 중 하나를 만족하는 객체는 열거 가능객체로 간주된다.
-
IEnumerator와 IEnumerable<T>를 구현한다.
-
열거자를 돌려주는, GetEnumerator라는 메서드가 있다.
foreach문으로 훑는 예이다.
foreach없이 저수준으로 읽는 방법이다.
열거자가 IDisposable를 구현하는 경우, foreach문은 using문으로도 작용한다. 즉, 반복이 끝나면 열거자 객체가 암묵적으로 처분된다.