Aracılığıyla paylaş


ActivityCollection.IEnumerable<Activity>.GetEnumerator Yöntem

Tanım

Toplulukta yinelenen bir numaralandırıcı döndürür.

 virtual System::Collections::Generic::IEnumerator<System::Workflow::ComponentModel::Activity ^> ^ System.Collections.Generic.IEnumerable<System.Workflow.ComponentModel.Activity>.GetEnumerator() = System::Collections::Generic::IEnumerable<System::Workflow::ComponentModel::Activity ^>::GetEnumerator;
System.Collections.Generic.IEnumerator<System.Workflow.ComponentModel.Activity> IEnumerable<Activity>.GetEnumerator ();
abstract member System.Collections.Generic.IEnumerable<System.Workflow.ComponentModel.Activity>.GetEnumerator : unit -> System.Collections.Generic.IEnumerator<System.Workflow.ComponentModel.Activity>
override this.System.Collections.Generic.IEnumerable<System.Workflow.ComponentModel.Activity>.GetEnumerator : unit -> System.Collections.Generic.IEnumerator<System.Workflow.ComponentModel.Activity>
Function GetEnumerator () As IEnumerator(Of Activity) Implements IEnumerable(Of Activity).GetEnumerator

Döndürülenler

IEnumerator<Activity>

Toplulukta yinelemek için kullanılabilecek bir IEnumerator<T> öğesi.

Uygulamalar

Açıklamalar

foreach C# dilinin deyimi (for eachC++, For Each Visual Basic) numaralandırıcıların karmaşıklığını gizler. Bu nedenle, numaralandırıcıyı doğrudan düzenlemek yerine kullanılması foreach önerilir.

Numaralandırıcılar, koleksiyonundaki verileri okumak için kullanılabilir, ancak temel koleksiyonu değiştirmek için kullanılamaz.

Başlangıçta, numaralandırıcı, koleksiyondaki ilk öğenin önüne yerleştirilir. Bu konumda Current tanımlanmamıştır. Bu nedenle, değerini Currentokumadan önce numaralandırıcıyı koleksiyonun ilk öğesine ilerletmek için çağrısında MoveNext bulunmalısınız.

Current çağrılana kadar MoveNext aynı nesneyi döndürür. MoveNext bir sonraki öğeye ayarlar Current .

Koleksiyonun sonunu geçerse MoveNext , numaralandırıcı koleksiyondaki son öğeden sonra konumlandırılır ve MoveNext false döndürür. Numaralandırıcı bu konumda olduğunda, sonraki çağrılar MoveNext da false döndürür. Döndürülen son çağrı MoveNext false ise tanımsız Current olur. Koleksiyonun ilk öğesine yeniden ayarlayamazsınız Current ; bunun yerine yeni bir numaralandırıcı örneği oluşturmanız gerekir.

Bir numaralandırıcı, koleksiyon değişmeden kaldığı sürece geçerli kalır. Ekleme, değiştirme veya öğeleri silme gibi, koleksiyona bir değişiklik yapılırsa, numaralandırıcı geri çevrilemez biçimde geçersiz kılınır ve davranışı tanımlanmamış olur.

Numaralandırıcının, koleksiyona özel kullanım erişimi yok; bu nedenle, bir koleksiyon içinde numaralandırma aslında bir iş parçacığı açısından güvenli yordam değildir. Numaralandırma sırasında iş parçacığı güvenliği sağlamak için tüm numaralandırma sırasında koleksiyonu kilitleyebilirsiniz. Okuma ve yazma için birden çok iş parçacığı tarafından erişilecek koleksiyona izin vermek için kendi eşitlemenizi uygulamalısınız.

Ad alanında System.Collections.Generic koleksiyonların varsayılan uygulamaları eşitlenmez.

Şunlara uygulanır