ArraySegment<T>.Enumerator Yapı

Tanım

Öğesi için bir Numaralandırıcı sağlar ArraySegment<T> .Provides an enumerator for the elements of an ArraySegment<T>.

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

Tür Parametreleri

T
Devralma
ArraySegment<T>.Enumerator
Uygulamalar

Açıklamalar

C# dilinin ve Için C# foreach ... Visual Basic sonraki yapı, numaralandırıcıların karmaşıklığını gizler.The C# foreach of the C# language and the For Each...Next construct in Visual Basic hides the complexity of enumerators. Numaralandırıcıyı doğrudan işlemek yerine foreach veya kullanılması For Each...Next önerilir.Instead of directly manipulating the enumerator, using foreach or For Each...Next is recommended.

Başlangıçta, Numaralandırıcı içindeki ilk öğeden önce konumlandırılır ArraySegment<T> .Initially, the enumerator is positioned before the first element in the ArraySegment<T>. Bu konumda Current tanımsız.At this position, Current is undefined. MoveNextDeğerini okumadan önce içindeki ilk öğeye numaralandırıcıyı ilerletmek için öğesini çağırmanız gerekir ArraySegment<T> Current .You must call MoveNext to advance the enumerator to the first item in the ArraySegment<T> before reading the value of Current.

Current çağrılana kadar aynı değeri döndürür MoveNext .Current returns the same value until MoveNext is called. MoveNextCurrentiçindeki bir sonraki öğeye ayarlar ArraySegment<T> .MoveNext sets Current to the next item in the ArraySegment<T>.

MoveNextÖğesinin sonunu geçerse ArraySegment<T> , MoveNext döndürür false .If MoveNext passes the end of the ArraySegment<T>, MoveNext returns false. Numaralandırıcı bu durumda olduğunda, sonraki çağrılar MoveNext da döndürülür false ve Current tanımsız olur.When the enumerator is at this state, subsequent calls to MoveNext also return false and Current is undefined. CurrentYeniden ilk öğe olarak ayarlayamazsınız ArraySegment<T> ; bunun yerine yeni bir Numaralandırıcı örneği oluşturmanız gerekir.You cannot set Current to the first item in the ArraySegment<T> again; you must create a new enumerator instance instead.

Özellikler

Current

Numaralandırıcının geçerli konumundaki öğeye bir başvuru alır.Gets a reference to the item at the current position of the enumerator.

Yöntemler

Dispose()

Bu Numaralandırıcı örneği tarafından kullanılan tüm kaynakları serbest bırakır.Releases all resources used by this enumerator instance.

MoveNext()

Numaralandırıcıyı öğesinin bir sonraki öğesine ilerletir ArraySegment<T> .Advances the enumerator to the next element of the ArraySegment<T>.

Belirtik Arabirim Kullanımları

IEnumerator.Current

Numaralayıcının geçerli konumundaki öğesini alır.Gets the element at the current position of the enumerator.

IEnumerator.Reset()

Numaralandırıcı, dizi segmentindeki ilk öğeden önceki ilk konumuna ayarlanır.Sets the enumerator to its initial position, which is before the first element in the array segment.

Şunlara uygulanır