ReadOnlySpan<T> Struktur

Definition

Dieser enthält eine typ- und arbeitsspeichersichere schreibgeschützte Darstellung einer zusammenhängenden Region von beliebigem Arbeitsspeicher.Provides a type-safe and memory-safe read-only representation of a contiguous region of arbitrary memory.

generic <typename T>
public value class ReadOnlySpan
public struct ReadOnlySpan<T>
type ReadOnlySpan<'T> = struct
Public Structure ReadOnlySpan(Of T)

Typparameter

T

Der Typ der Elemente in der ReadOnlySpan<T>.The type of items in the ReadOnlySpan<T>.

Vererbung
ReadOnlySpan<T>

Hinweise

ReadOnlySpan<T> ist eine ref-Struktur , die auf dem Stapel zugeordnet wird und nie mit dem verwalteten Heap versehen werden kann.ReadOnlySpan<T> is a ref struct that is allocated on the stack and can never escape to the managed heap. Referenzstruktur Typen weisen eine Reihe von Einschränkungen auf, um sicherzustellen, dass Sie nicht in den verwalteten Heap herauf gestuft werden können. Dies umfasst auch, dass Sie nicht gekapselt, in Lambda-Ausdrücken aufgezeichnet, Variablen vom Typ Objectzugewiesen, dynamic Variablen zugewiesen werden und nicht Implementieren Sie einen beliebigen Schnittstellentyp.Ref struct types have a number of restrictions to ensure that they cannot be promoted to the managed heap, including that they can't be boxed, captured in lambda expressions, assigned to variables of type Object, assigned to dynamic variables, and they cannot implement any interface type.

Eine ReadOnlySpan<T>-Instanz wird häufig verwendet, um auf die Elemente eines Arrays oder einen Teil eines Arrays zu verweisen.A ReadOnlySpan<T> instance is often used to reference the elements of an array or a portion of an array. Anders als bei einem Array kann eine ReadOnlySpan<T> Instanz jedoch auf verwalteten Arbeitsspeicher, systemeigenen Arbeitsspeicher oder auf dem Stapel verwaltete Arbeitsspeicher verweisen.Unlike an array, however, a ReadOnlySpan<T> instance can point to managed memory, native memory, or memory managed on the stack.

Konstruktoren

ReadOnlySpan<T>(T[])

Erstellt ein neues ReadOnlySpan<T> über das gesamte angegebene Array.Creates a new ReadOnlySpan<T> over the entirety of a specified 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.Creates a new ReadOnlySpan<T> that includes a specified number of elements of an array starting at a specified index.

ReadOnlySpan<T>(Void*, Int32)

Erstellt ein neues ReadOnlySpan<T> aus einer angegebenen Anzahl von T-Elementen. Dabei wird an der angegebenen Speicheradresse begonnen.Creates a new ReadOnlySpan<T> from a specified number of T elements starting at a specified memory address.

Eigenschaften

Empty

Gibt ein leeres ReadOnlySpan<T> zurück.Returns an empty ReadOnlySpan<T>.

IsEmpty

Gibt einen Wert zurück, der angibt, dass das aktuelle schreibgeschützte Span-Element leer ist.Returns a value that indicates the current read-only span is empty.

Item[Int32]

Ruft ein Element aus dem schreibgeschützten Span-Element am angegebenen nullbasierten Index ab.Gets an item from the read-only span at the specified zero-based index.

Length

Die Anzahl der Elemente im schreibgeschützten Span-Element.The number of items in the read-only span.

Methoden

CopyTo(Span<T>)

Kopiert die Inhalte dieses ReadOnlySpan<T>-Elements in ein Span<T>-Zielelement.Copies the contents of this ReadOnlySpan<T> into a destination Span<T>.

Equals(Object)

Wird nicht unterstützt.Not supported. Löst eine NotSupportedException aus.Throws a NotSupportedException.

GetEnumerator()

Gibt einen Enumerator für dieses ReadOnlySpan<T>-Element zurück.Returns an enumerator for this ReadOnlySpan<T>.

GetHashCode()

Wird nicht unterstützt.Not supported. Löst eine NotSupportedException aus.Throws a NotSupportedException.

GetPinnableReference()

Ein schreibgeschützter Verweis auf ein Objekt vom Typ T, das zum Fixieren verwendet werden kann und für die Unterstützung der Verwendung einer Spanne innerhalb einer fixed-Anweisung erforderlich ist.A read-only reference to an object of type T that can be used for pinning, and is required to support the use of span within a fixed statement.

Slice(Int32)

Bildet einen Slice aus dem aktuellen schreibgeschützten Span-Element, das an einem angegebenen Index beginnt.Forms a slice out of the current read-only span that begins at a specified index.

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.Forms a slice out of the current read-only span starting at a specified index for a specified length.

ToArray()

Kopiert die Inhalte dieses schreibgeschützten Span-Elements in ein neues Array.Copies the contents of this read-only span into a new array.

ToString()

Gibt die Zeichenfolgendarstellung für dieses ReadOnlySpan<T> zurück.Returns the string representation of this ReadOnlySpan<T>.

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.Attempts to copy the contents of this ReadOnlySpan<T> into a Span<T> and returns a value to indicate whether or not the operation succeeded.

Operatoren

Equality(ReadOnlySpan<T>, ReadOnlySpan<T>)

Gibt einen Wert zurück, der angibt, ob zwei ReadOnlySpan<T>-Instanzen gleich sind.Returns a value that indicates whether two ReadOnlySpan<T> instances are equal.

Implicit(ArraySegment<T> to ReadOnlySpan<T>)

Definiert eine implizite Konvertierung von ArraySegment<T> in ReadOnlySpan<T>.Defines an implicit conversion of an ArraySegment<T> to a ReadOnlySpan<T>.

Implicit(T[] to ReadOnlySpan<T>)

Definiert eine implizite Konvertierung eines Arrays in ReadOnlySpan<T>.Defines an implicit conversion of an array to a ReadOnlySpan<T>.

Inequality(ReadOnlySpan<T>, ReadOnlySpan<T>)

Gibt einen Wert zurück, der angibt, ob zwei ReadOnlySpan<T>-Instanzen ungleich sind.Returns a value that indicates whether two ReadOnlySpan<T> instances are not equal.

Erweiterungsmethoden

BinarySearch<T>(ReadOnlySpan<T>, IComparable<T>)

Durchsucht ein ganzes sortiertes ReadOnlySpan<T> mithilfe der angegebenen generischen IComparable<T>-Schnittstelle nach einem Wert.Searches an entire sorted ReadOnlySpan<T> for a value using the specified IComparable<T> generic interface.

BinarySearch<T,TComparer>(ReadOnlySpan<T>, T, TComparer)

Durchsucht ein ganzes sortiertes ReadOnlySpan<T> mithilfe des angegebenen generischen TComparer-Typs nach einem angegebenen Wert.Searches an entire sorted ReadOnlySpan<T> for a specified value using the specified TComparer generic type.

BinarySearch<T,TComparable>(ReadOnlySpan<T>, TComparable)

Durchsucht ein ganzes sortiertes ReadOnlySpan<T> mithilfe des angegebenen generischen TComparable-Typs nach einem Wert.Searches an entire sorted ReadOnlySpan<T> for a value using the specified TComparable generic type.

Contains<T>(ReadOnlySpan<T>, T)

Gibt an, ob ein angegebener Wert in einer schreibgeschützten Spanne gefunden wird.Indicates whether a specified value is found in a read-only span. Werte werden mit „IEquatable{T}.Equals(T)“ verglichen.Values are compared using IEquatable{T}.Equals(T).

EndsWith<T>(ReadOnlySpan<T>, ReadOnlySpan<T>)

Bestimmt, ob die angegebene Sequenz am Ende einer schreibgeschützten Spanne angezeigt wird.Determines whether the specified sequence appears at the end of a read-only span.

IndexOf<T>(ReadOnlySpan<T>, T)

Sucht nach dem angegebenen Wert und gibt den Index des ersten Vorkommens zurück.Searches for the specified value and returns the index of its first occurrence. Werte werden mit „IEquatable{T}.Equals(T)“ verglichen.Values are compared using IEquatable{T}.Equals(T).

IndexOf<T>(ReadOnlySpan<T>, ReadOnlySpan<T>)

Sucht nach der angegebenen Sequenz und gibt den Index des ersten Vorkommens zurück.Searches for the specified sequence and returns the index of its first occurrence. Werte werden mit „IEquatable{T}.Equals(T)“ verglichen.Values are compared using IEquatable{T}.Equals(T).

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).Searches for the first index of any of the specified values similar to calling IndexOf several times with the logical OR operator.

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).Searches for the first index of any of the specified values similar to calling IndexOf several times with the logical OR operator.

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).Searches for the first index of any of the specified values similar to calling IndexOf several times with the logical OR operator.

LastIndexOf<T>(ReadOnlySpan<T>, T)

Sucht nach dem angegebenen Wert und gibt den Index des letzten Vorkommens zurück.Searches for the specified value and returns the index of its last occurrence. Werte werden mit „IEquatable{T}.Equals(T)“ verglichen.Values are compared using IEquatable{T}.Equals(T).

LastIndexOf<T>(ReadOnlySpan<T>, ReadOnlySpan<T>)

Sucht nach der angegebenen Sequenz und gibt den Index des letzten Vorkommens zurück.Searches for the specified sequence and returns the index of its last occurrence. Werte werden mit „IEquatable{T}.Equals(T)“ verglichen.Values are compared using IEquatable{T}.Equals(T).

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).Searches for the last index of any of the specified values similar to calling LastIndexOf several times with the logical OR operator.

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).Searches for the last index of any of the specified values similar to calling LastIndexOf several times with the logical OR operator.

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).Searches for the last index of any of the specified values similar to calling LastIndexOf several times with the logical OR operator.

Overlaps<T>(ReadOnlySpan<T>, ReadOnlySpan<T>)

Bestimmt, ob sich zwei schreibgeschützte Sequenzen im Speicher überlappen.Determines whether two read-only sequences overlap in memory.

Overlaps<T>(ReadOnlySpan<T>, ReadOnlySpan<T>, Int32)

Bestimmt, ob sich zwei schreibgeschützte Sequenzen im Speicher überlappen, und gibt den Elementoffset aus.Determines whether two read-only sequences overlap in memory and outputs the element offset.

SequenceCompareTo<T>(ReadOnlySpan<T>, ReadOnlySpan<T>)

Bestimmt die relative Reihenfolge von zwei schreibgeschützten Sequenzen durch Vergleichen ihrer Elemente mit „IComparable{T}.CompareTo(T)“.Determines the relative order of two read-only sequences by comparing their elements using 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.Determines whether two read-only sequences are equal by comparing the elements using IEquatable{T}.Equals(T).

StartsWith<T>(ReadOnlySpan<T>, ReadOnlySpan<T>)

Bestimmt, ob eine angegebene Sequenz am Anfang einer schreibgeschützten Spanne angezeigt wird.Determines whether a specified sequence appears at the start of a read-only span.

Trim<T>(ReadOnlySpan<T>, T)

Entfernt alle führenden und nachfolgenden Vorkommen eines angegebenen Elements aus einer schreibgeschützten Spanne.Removes all leading and trailing occurrences of a specified element from a read-only span.

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.Removes all leading and trailing occurrences of a set of elements specified in a read-only span from a read-only span.

TrimEnd<T>(ReadOnlySpan<T>, T)

Entfernt alle nachfolgenden Vorkommen eines angegebenen Elements aus einer schreibgeschützten Spanne.Removes all trailing occurrences of a specified element from a read-only span.

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.Removes all trailing occurrences of a set of elements specified in a read-only span from a read-only span.

TrimStart<T>(ReadOnlySpan<T>, T)

Entfernt alle führenden Vorkommen eines bestimmten Elements aus der Spanne.Removes all leading occurrences of a specified element from the span.

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.Removes all leading occurrences of a set of elements specified in a read-only span from the span.

Gilt für: