ReadOnlySpan<T>.Enumerator 구조체

정의

의 요소 ReadOnlySpan<T>에 대한 열거자를 제공합니다.

public: value class ReadOnlySpan<T>::Enumerator : System::Collections::Generic::IEnumerator<T>
public: value class ReadOnlySpan<T>::Enumerator
public ref struct ReadOnlySpan<T>.Enumerator : System.Collections.Generic.IEnumerator<T>
public ref struct ReadOnlySpan<T>.Enumerator
type ReadOnlySpan<'T>.Enumerator = struct
    interface IEnumerator<'T>
    interface IEnumerator
    interface IDisposable
type ReadOnlySpan<'T>.Enumerator = struct
Public Structure ReadOnlySpan(Of T).Enumerator
Implements IEnumerator(Of T)
Public Structure ReadOnlySpan(Of T).Enumerator

형식 매개 변수

T
상속
ReadOnlySpan<T>.Enumerator
구현

설명

C# 언어의 C# foreachFor Each... 다음 Visual Basic 구문은 열거자의 복잡성을 숨깁니다. 열거자를 직접 조작하는 대신 사용 foreach 하거나 For Each...Next 사용하는 것이 좋습니다.

처음에는 열거자가 .의 첫 번째 요소 앞에 배치됩니다 ReadOnlySpan<T>. 이 위치에서 Current 정의되지 않습니다. 값을 읽기 Current전에 열거자를 첫 번째 항목으로 ReadOnlySpan<T> 이동하도록 호출 MoveNext 해야 합니다.

Current 는 호출될 때까지 MoveNext 동일한 값을 반환합니다. MoveNext에서 다음 항목으로 ReadOnlySpan<T>설정합니다Current.

의 끝을 ReadOnlySpan<T>MoveNext 통과하면 MoveNext .를 반환합니다false. 열거자가 이 상태에 있으면 후속 호출 MoveNext 도 반환 false 되고 Current 정의되지 않습니다. 다시 첫 번째 항목 ReadOnlySpan<T> 으로 설정할 Current 수 없습니다. 대신 새 열거자 인스턴스를 만들어야 합니다.

스택에 ReadOnlySpan<T> 할당되지만 지점이 있는 ReadOnlySpan<T> 기본 데이터는 할당되지 않을 수 있습니다. 따라서 a를 통해 ReadOnlySpan<T> 열거하는 것은 본질적으로 스레드로부터 안전한 프로시저가 아닙니다. 열거 중 스레드 안전을 보장하려면 사용자 고유의 동기화를 구현해야 합니다.

.NET 다른 열거자 구조와 달리 ReadOnlySpan<T>.Enumerator:

  • 또는 IEnumerator<T> 인터페이스를 IEnumerator 구현하지 않습니다. 이는 ReadOnlySpan<T>.Enumeratorref 구조체 이며 boxed할 수 없기 때문입니다.

  • 열거자를 범위의 첫 번째 요소 앞의 초기 위치로 설정할 수 있는 메서드를 포함하지 Reset 않습니다. (메서드는 IEnumerator.Reset() 인터페이스의 일부로 구현되어야 하지만 대부분의 구현자는 예외를 throw하거나 구현을 제공하지 않습니다.)

속성

Name Description
Current

열거자의 현재 위치에 있는 항목에 대한 참조를 가져옵니다.

메서드

Name Description
MoveNext()

열거자를 다음 항목 ReadOnlySpan<T>으로 이동합니다.

명시적 인터페이스 구현

Name Description
IDisposable.Dispose()

관리되지 않는 리소스의 해제, 해제 또는 재설정과 관련된 애플리케이션 정의 작업을 수행합니다.

IEnumerator.Current

열거자의 현재 위치에 있는 컬렉션의 요소를 가져옵니다.

IEnumerator.Reset()

열거자를 컬렉션의 첫 번째 요소 앞에 있는 초기 위치로 설정합니다.

IEnumerator<T>.Current

열거자의 현재 위치에 있는 컬렉션의 요소를 가져옵니다.

적용 대상