SortedSet<T>.Enumerator Struct
Definitie
Belangrijk
Bepaalde informatie heeft betrekking op een voorlopige productversie die aanzienlijk kan worden gewijzigd voordat deze wordt uitgebracht. Microsoft biedt geen enkele expliciete of impliciete garanties met betrekking tot de informatie die hier wordt verstrekt.
Opsomming van de elementen van een SortedSet<T> object.
public: value class SortedSet<T>::Enumerator : System::Collections::Generic::IEnumerator<T>
public: value class SortedSet<T>::Enumerator : System::Collections::Generic::IEnumerator<T>, System::Runtime::Serialization::IDeserializationCallback, System::Runtime::Serialization::ISerializable
public struct SortedSet<T>.Enumerator : System.Collections.Generic.IEnumerator<T>
[System.Serializable]
public struct SortedSet<T>.Enumerator : System.Collections.Generic.IEnumerator<T>, System.Runtime.Serialization.IDeserializationCallback, System.Runtime.Serialization.ISerializable
public struct SortedSet<T>.Enumerator : System.Collections.Generic.IEnumerator<T>, System.Runtime.Serialization.IDeserializationCallback, System.Runtime.Serialization.ISerializable
type SortedSet<'T>.Enumerator = struct
interface IEnumerator<'T>
interface IEnumerator
interface IDisposable
[<System.Serializable>]
type SortedSet<'T>.Enumerator = struct
interface IEnumerator<'T>
interface IDisposable
interface IEnumerator
interface ISerializable
interface IDeserializationCallback
type SortedSet<'T>.Enumerator = struct
interface IEnumerator<'T>
interface IEnumerator
interface IDisposable
interface IDeserializationCallback
interface ISerializable
Public Structure SortedSet(Of T).Enumerator
Implements IEnumerator(Of T)
Public Structure SortedSet(Of T).Enumerator
Implements IDeserializationCallback, IEnumerator(Of T), ISerializable
Type parameters
- T
- Overname
- Kenmerken
- Implementeringen
Opmerkingen
De instructie foreach van de C#-taal (For Each in Visual Basic) verbergt de complexiteit van opsommingen. Daarom wordt het gebruik foreach aanbevolen in plaats van de opsomming rechtstreeks te bewerken.
Enumerators kunnen worden gebruikt om de gegevens in de verzameling te lezen, maar ze kunnen niet worden gebruikt om de onderliggende verzameling te wijzigen.
In eerste instantie wordt de enumerator vóór het eerste element in de verzameling weergegeven. Op deze positie is de Current eigenschap niet gedefinieerd. Daarom moet u de MoveNext methode aanroepen om de enumerator naar het eerste element van de verzameling te gaan voordat u de waarde van Current.
Current retourneert hetzelfde object totdat MoveNext het wordt aangeroepen. MoveNext wordt ingesteld Current op het volgende element.
Als MoveNext het einde van de verzameling wordt doorgegeven, wordt de enumerator geplaatst na het laatste element in de verzameling en MoveNext wordt het resultaat geretourneerd false. Wanneer de enumerator zich op deze positie bevindt, worden volgende aanroepen ook MoveNext geretourneerd false. Als de laatste aanroep die moet MoveNext worden geretourneerd false, Current niet is gedefinieerd. U kunt niet opnieuw instellen Current op het eerste element van de verzameling. U moet in plaats daarvan een nieuw enumerator-object maken.
Een enumerator blijft geldig zolang de verzameling ongewijzigd blijft. Als er wijzigingen worden aangebracht in de verzameling, zoals het toevoegen, wijzigen of verwijderen van elementen, wordt de enumerator onherstelbaar ongeldig gemaakt en wordt de volgende aanroep naar MoveNext of IEnumerator.Reset genereert een InvalidOperationException.
De enumerator heeft geen exclusieve toegang tot de verzameling; Daarom is het inventariseren via een verzameling intrinsiek geen thread-veilige procedure. Om de veiligheid van threads tijdens de inventarisatie te garanderen, kunt u de verzameling vergrendelen tijdens de gehele inventarisatie. Als u wilt toestaan dat de verzameling toegankelijk is voor meerdere threads voor lezen en schrijven, moet u uw eigen synchronisatie implementeren.
Standaard implementaties van verzamelingen in de System.Collections.Generic naamruimte worden niet gesynchroniseerd.
Eigenschappen
| Name | Description |
|---|---|
| Current |
Hiermee haalt u het element op de huidige positie van de enumerator op. |
Methoden
| Name | Description |
|---|---|
| Dispose() |
Alle resources die worden gebruikt door de SortedSet<T>.Enumerator. |
| MoveNext() |
Hiermee gaat u naar het volgende element van de SortedSet<T> verzameling. |
Expliciete interface-implementaties
| Name | Description |
|---|---|
| IDeserializationCallback.OnDeserialization(Object) |
Implementeert de ISerializable interface en verhoogt de deserialisatie-gebeurtenis wanneer de deserialisatie is voltooid. |
| IEnumerator.Current |
Hiermee haalt u het element op de huidige positie van de enumerator op. |
| IEnumerator.Reset() |
Hiermee stelt u de enumerator in op de oorspronkelijke positie, die vóór het eerste element in de verzameling valt. |
| ISerializable.GetObjectData(SerializationInfo, StreamingContext) |
Implementeert de ISerializable interface en retourneert de gegevens die nodig zijn om het SortedSet<T> exemplaar te serialiseren. |