PersonalizationStateInfoCollection.GetEnumerator 方法

定義

傳回可以逐一查看集合的標準列舉值。 這個方法無法被繼承。

public:
 virtual System::Collections::IEnumerator ^ GetEnumerator();
public System.Collections.IEnumerator GetEnumerator ();
abstract member GetEnumerator : unit -> System.Collections.IEnumerator
override this.GetEnumerator : unit -> System.Collections.IEnumerator
Public Function GetEnumerator () As IEnumerator

傳回

IEnumerator,可用於逐一查看集合。

實作

備註

列舉程式可以用來讀取集合中的資料,但是無法用來修改基礎集合。

一開始,列舉程式位在集合中的第一個項目之前。 方法 Reset 也會將列舉值帶回這個位置。 在這個位置, Current 屬性是未定義的。 因此,您必須先呼叫 MoveNext 方法,將列舉值前移至集合的第一個專案,然後再讀取 的值 Current 。 如需列舉值的詳細資訊,請參閱 IEnumerator

只要集合維持不變,列舉值就仍維持有效。 如果對集合進行變更,例如加入、修改或刪除項目,列舉程式會永久失效,且其行為未定義。

C# 語言的 foreach 陳述式 (在 Visual Basic 中為 for each) 會隱藏列舉值的複雜度。 因此,建議您使用 foreach,而不要直接使用列舉值。

列舉程式沒有集合的獨佔存取權,因此,列舉集合內容本質上並不是安全的執行緒程序。 若要確保列舉期間的執行緒安全性,您可以在整個列舉期間鎖定集合。 若要讓多重執行緒能夠存取集合以便進行讀取和寫入,您必須實作自己的同步處理。

適用於