ReadOnlySpan<T> Struktur
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Dieser enthält eine typ- und arbeitsspeichersichere schreibgeschützte Darstellung einer zusammenhängenden Region von beliebigem Arbeitsspeicher.
generic <typename T>
public value class ReadOnlySpan
public readonly ref struct ReadOnlySpan<T>
type ReadOnlySpan<'T> = struct
Public Structure ReadOnlySpan(Of T)
Typparameter
- T
Der Typ der Elemente im ReadOnlySpan<T>.
- Vererbung
Hinweise
ReadOnlySpan<T>
ist eine Ref-Struktur , die auf dem Stapel zugewiesen wird und niemals dem verwalteten Heap entkommen kann. Ref-Strukturtypen verfügen über eine Reihe von Einschränkungen, um sicherzustellen, dass sie nicht auf den verwalteten Heap höher gestellt werden können, einschließlich, dass sie nicht in Lambda-Ausdrücken erfasst werden können, die Variablen des Typs Objectdynamic
zugewiesen sind, zugewiesen für Variablen, zugewiesen und keine Schnittstellentypen implementieren können.
Eine ReadOnlySpan<T>
Instanz wird häufig verwendet, um auf die Elemente eines Arrays oder einen Teil eines Arrays zu verweisen. Im Gegensatz zu einem Array kann eine ReadOnlySpan<T>
Instanz jedoch auf verwalteten Speicher, nativen Arbeitsspeicher oder auf dem Stapel verwalteten Speicher verweisen.
Konstruktoren
ReadOnlySpan<T>(T[]) |
Erstellt ein neues ReadOnlySpan<T> über das gesamte angegebene Array. |
ReadOnlySpan<T>(T[], Int32, Int32) |
Erstellt ein neues ReadOnlySpan<T>, das eine angegebene Anzahl von Elementen aus einem Array enthält. Dabei wird an einem angegebenen Index begonnen. |
ReadOnlySpan<T>(Void*, Int32) |
Erstellt ein neues ReadOnlySpan<T> aus einer angegebenen Anzahl von |
Eigenschaften
Empty |
Gibt ein leeres ReadOnlySpan<T> zurück. |
IsEmpty |
Gibt einen Wert zurück, der angibt, dass das aktuelle schreibgeschützte Span-Element leer ist. |
Item[Int32] |
Ruft ein Element aus dem schreibgeschützten Span-Element am angegebenen nullbasierten Index ab. |
Length |
Die Anzahl der Elemente im schreibgeschützten Span-Element. |
Methoden
CopyTo(Span<T>) |
Kopiert die Inhalte dieses ReadOnlySpan<T>-Elements in ein Span<T>-Zielelement. |
Equals(Object) |
Veraltet.
Veraltet.
Wird nicht unterstützt. Löst eine NotSupportedException aus. |
GetEnumerator() |
Gibt einen Enumerator für dieses ReadOnlySpan<T>-Element zurück. |
GetHashCode() |
Veraltet.
Wird nicht unterstützt. Löst eine NotSupportedException aus. |
GetPinnableReference() |
Gibt einen schreibgeschützten Verweis auf ein Objekt vom Typ T zurück, das zum Anheften verwendet werden kann. Diese Methode soll .NET-Compiler unterstützen und nicht vom Benutzercode aufgerufen werden. |
Slice(Int32) |
Bildet einen Slice aus dem aktuellen schreibgeschützten Span-Element, das an einem angegebenen Index beginnt. |
Slice(Int32, Int32) |
Bildet einen Slice aus dem aktuellen schreibgeschützten Span-Element. Dabei wird an einem angegebenen Index für eine angegebene Länge begonnen. |
ToArray() |
Kopiert die Inhalte dieses schreibgeschützten Span-Elements in ein neues Array. |
ToString() |
Gibt die Zeichenfolgendarstellung für dieses ReadOnlySpan<T> zurück. |
TryCopyTo(Span<T>) |
Versucht, den Inhalt dieses ReadOnlySpan<T> in ein Span<T> zu kopieren und gibt einen Wert zurück, der angibt, ob der Vorgang erfolgreich war oder nicht. |
Operatoren
Equality(ReadOnlySpan<T>, ReadOnlySpan<T>) |
Gibt einen Wert zurück, der angibt, ob zwei ReadOnlySpan<T>-Instanzen gleich sind. |
Implicit(ArraySegment<T> to ReadOnlySpan<T>) |
Definiert eine implizite Konvertierung von ArraySegment<T> in ReadOnlySpan<T>. |
Implicit(T[] to ReadOnlySpan<T>) |
Definiert eine implizite Konvertierung eines Arrays in ReadOnlySpan<T>. |
Inequality(ReadOnlySpan<T>, ReadOnlySpan<T>) |
Gibt einen Wert zurück, der angibt, ob zwei ReadOnlySpan<T>-Instanzen ungleich sind. |
Erweiterungsmethoden
ToImmutableArray<T>(ReadOnlySpan<T>) |
Erstellen Sie ein unveränderliches Array von Inhalten aus angegebenen Elementen. |
BinarySearch<T>(ReadOnlySpan<T>, IComparable<T>) |
Durchsucht ein ganzes sortiertes ReadOnlySpan<T> mithilfe der angegebenen generischen IComparable<T>-Schnittstelle nach einem Wert. |
BinarySearch<T,TComparer>(ReadOnlySpan<T>, T, TComparer) |
Durchsucht ein ganzes sortiertes ReadOnlySpan<T> mithilfe des angegebenen generischen |
BinarySearch<T,TComparable>(ReadOnlySpan<T>, TComparable) |
Durchsucht ein ganzes sortiertes ReadOnlySpan<T> mithilfe des angegebenen generischen |
CommonPrefixLength<T>(ReadOnlySpan<T>, ReadOnlySpan<T>) |
Sucht die Länge eines gemeinsamen Präfixes, das zwischen |
CommonPrefixLength<T>(ReadOnlySpan<T>, ReadOnlySpan<T>, IEqualityComparer<T>) |
Bestimmt die Länge eines gemeinsamen Präfixes, das zwischen |
Contains<T>(ReadOnlySpan<T>, T) |
Gibt an, ob ein angegebener Wert in einer schreibgeschützten Spanne gefunden wird. Werte werden mit „IEquatable{T}.Equals(T)“ verglichen. |
EndsWith<T>(ReadOnlySpan<T>, ReadOnlySpan<T>) |
Bestimmt, ob die angegebene Sequenz am Ende einer schreibgeschützten Spanne angezeigt wird. |
IndexOf<T>(ReadOnlySpan<T>, T) |
Sucht nach dem angegebenen Wert und gibt den Index des ersten Vorkommens zurück. Werte werden mit „IEquatable{T}.Equals(T)“ verglichen. |
IndexOf<T>(ReadOnlySpan<T>, ReadOnlySpan<T>) |
Sucht nach der angegebenen Sequenz und gibt den Index des ersten Vorkommens zurück. Werte werden mit „IEquatable{T}.Equals(T)“ verglichen. |
IndexOfAny<T>(ReadOnlySpan<T>, T, T) |
Sucht nach dem ersten Index eines der angegebenen Werte, ähnlich dem mehrmaligen Aufruf von IndexOf mit dem logischen OR-Operator (ODER). |
IndexOfAny<T>(ReadOnlySpan<T>, T, T, T) |
Sucht nach dem ersten Index eines der angegebenen Werte, ähnlich dem mehrmaligen Aufruf von IndexOf mit dem logischen OR-Operator (ODER). |
IndexOfAny<T>(ReadOnlySpan<T>, ReadOnlySpan<T>) |
Sucht nach dem ersten Index eines der angegebenen Werte, ähnlich dem mehrmaligen Aufruf von IndexOf mit dem logischen OR-Operator (ODER). |
IndexOfAnyExcept<T>(ReadOnlySpan<T>, T) |
Sucht nach dem ersten Index eines anderen Werts als dem angegebenen |
IndexOfAnyExcept<T>(ReadOnlySpan<T>, T, T) |
Sucht nach dem ersten Index eines anderen Werts als der angegebenen |
IndexOfAnyExcept<T>(ReadOnlySpan<T>, T, T, T) |
Sucht nach dem ersten Index eines anderen Werts als dem angegebenen |
IndexOfAnyExcept<T>(ReadOnlySpan<T>, ReadOnlySpan<T>) |
Sucht nach dem ersten Index eines anderen Werts als dem angegebenen |
LastIndexOf<T>(ReadOnlySpan<T>, T) |
Sucht nach dem angegebenen Wert und gibt den Index des letzten Vorkommens zurück. Werte werden mit „IEquatable{T}.Equals(T)“ verglichen. |
LastIndexOf<T>(ReadOnlySpan<T>, ReadOnlySpan<T>) |
Sucht nach der angegebenen Sequenz und gibt den Index des letzten Vorkommens zurück. Werte werden mit „IEquatable{T}.Equals(T)“ verglichen. |
LastIndexOfAny<T>(ReadOnlySpan<T>, T, T) |
Sucht nach dem letzten Index eines der angegebenen Werte, ähnlich dem mehrmaligen Aufruf von LastIndexOf mit dem logischen OR-Operator (ODER). |
LastIndexOfAny<T>(ReadOnlySpan<T>, T, T, T) |
Sucht nach dem letzten Index eines der angegebenen Werte, ähnlich dem mehrmaligen Aufruf von LastIndexOf mit dem logischen OR-Operator (ODER). |
LastIndexOfAny<T>(ReadOnlySpan<T>, ReadOnlySpan<T>) |
Sucht nach dem letzten Index eines der angegebenen Werte, ähnlich dem mehrmaligen Aufruf von LastIndexOf mit dem logischen OR-Operator (ODER). |
LastIndexOfAnyExcept<T>(ReadOnlySpan<T>, T) |
Sucht nach dem letzten Index eines anderen Werts als dem angegebenen |
LastIndexOfAnyExcept<T>(ReadOnlySpan<T>, T, T) |
Sucht nach dem letzten Index eines anderen Werts als dem angegebenen |
LastIndexOfAnyExcept<T>(ReadOnlySpan<T>, T, T, T) |
Sucht nach dem letzten Index eines anderen Werts als dem angegebenen |
LastIndexOfAnyExcept<T>(ReadOnlySpan<T>, ReadOnlySpan<T>) |
Sucht nach dem letzten Index eines anderen Werts als dem angegebenen |
Overlaps<T>(ReadOnlySpan<T>, ReadOnlySpan<T>) |
Bestimmt, ob sich zwei schreibgeschützte Sequenzen im Speicher überlappen. |
Overlaps<T>(ReadOnlySpan<T>, ReadOnlySpan<T>, Int32) |
Bestimmt, ob sich zwei schreibgeschützte Sequenzen im Speicher überlappen, und gibt den Elementoffset aus. |
SequenceCompareTo<T>(ReadOnlySpan<T>, ReadOnlySpan<T>) |
Bestimmt die relative Reihenfolge von zwei schreibgeschützten Sequenzen durch Vergleichen ihrer Elemente mit „IComparable{T}.CompareTo(T)“. |
SequenceEqual<T>(ReadOnlySpan<T>, ReadOnlySpan<T>) |
Bestimmt, ob zwei schreibgeschützte Sequenzen identisch sind, indem die Elemente mit „IEquatable{T}.Equals(T)“ verglichen werden. |
SequenceEqual<T>(ReadOnlySpan<T>, ReadOnlySpan<T>, IEqualityComparer<T>) |
Bestimmt, ob zwei Sequenzen gleich sind, indem sie die Elemente mithilfe einer IEqualityComparer<T>. |
StartsWith<T>(ReadOnlySpan<T>, ReadOnlySpan<T>) |
Bestimmt, ob eine angegebene Sequenz am Anfang einer schreibgeschützten Spanne angezeigt wird. |
Trim<T>(ReadOnlySpan<T>, T) |
Entfernt alle führenden und nachfolgenden Vorkommen eines angegebenen Elements aus einer schreibgeschützten Spanne. |
Trim<T>(ReadOnlySpan<T>, ReadOnlySpan<T>) |
Entfernt alle führenden und nachfolgenden Vorkommen einer Reihe von Elementen, die in einer schreibgeschützten Spanne angegeben sind, aus einer schreibgeschützten Spanne. |
TrimEnd<T>(ReadOnlySpan<T>, T) |
Entfernt alle nachfolgenden Vorkommen eines angegebenen Elements aus einer schreibgeschützten Spanne. |
TrimEnd<T>(ReadOnlySpan<T>, ReadOnlySpan<T>) |
Entfernt alle nachfolgenden Vorkommen einer Reihe von Elementen, die in einer schreibgeschützten Spanne angegeben sind, aus einer schreibgeschützten Spanne. |
TrimStart<T>(ReadOnlySpan<T>, T) |
Entfernt alle führenden Vorkommen eines bestimmten Elements aus der Spanne. |
TrimStart<T>(ReadOnlySpan<T>, ReadOnlySpan<T>) |
Entfernt alle führenden Vorkommen einer Reihe von Elementen, die in einer schreibgeschützten Spanne angegeben sind, aus der Spanne. |