ReadOnlySpan<T>.Enumerator 結構

定義

提供 ReadOnlySpan<T> 項目的列舉值。

public: value class ReadOnlySpan<T>::Enumerator
public ref struct ReadOnlySpan<T>.Enumerator
type ReadOnlySpan<'T>.Enumerator = struct
Public Structure ReadOnlySpan(Of T).Enumerator

類型參數

T
繼承
ReadOnlySpan<T>.Enumerator

備註

C# 語言的 C# foreachFor Each...Visual Basic 中的下一個 建構會隱藏列舉值的複雜度。 不建議使用 foreachFor Each...Next 直接操作列舉值。

一開始,列舉值位於 中的 ReadOnlySpan<T> 第一個專案之前。 在這個位置上,Current 並未定義。 您必須呼叫 MoveNext ,才能將列舉值前進至 中的 ReadOnlySpan<T> 第一個專案,再讀取 的值 Current

Current 會傳回相同的值,直到呼叫為止 MoveNextMoveNext 會將 設定 Current 為 中的 ReadOnlySpan<T> 下一個專案。

如果 MoveNext 傳遞 的 ReadOnlySpan<T> 結尾, MoveNext 則會傳 false 回 。 當列舉值處於這個狀態時,後續對 MoveNext 的呼叫也會傳回 falseCurrent 未定義。 您無法再次設定 Current 為 中的 ReadOnlySpan<T> 第一個專案;您必須改為建立新的列舉值實例。

ReadOnlySpan<T>雖然 配置在堆疊上,但指向的基礎資料 ReadOnlySpan<T> 可能不是。 因此,透過 ReadOnlySpan<T> 列舉本質上不是安全線程程式。 若要保證列舉期間的執行緒安全,您必須實作自己的同步處理。

不同于 .NET 中的一些其他列舉值結構,: ReadOnlySpan<T>.Enumerator

屬性

Current

取得位於目前列舉值位置的項目參考。

方法

MoveNext()

將列舉值前移至 ReadOnlySpan<T> 的下一個項目。

適用於