ReadOnlySpan<T> Struktura

Definicja

Zapewnia bezpieczną i bezpieczną w zakresie pamięci reprezentację ciągłego regionu dowolnej pamięci.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)

Parametry typu

T

Typ elementów w ReadOnlySpan<T>.The type of items in the ReadOnlySpan<T>.

Dziedziczenie
ReadOnlySpan<T>

Uwagi

ReadOnlySpan<T> jest strukturą ref przydzieloną na stosie i nigdy nie może wyjść do sterty zarządzanej.ReadOnlySpan<T> is a ref struct that is allocated on the stack and can never escape to the managed heap. Typy struktur ref mają wiele ograniczeń, aby zapewnić, że nie można ich podwyższyć do zarządzanego sterty, w tym, że nie mogą być opakowane, przechwycone w wyrażeniach lambda, przypisane do zmiennych typu Object, przypisane do zmiennych dynamic i nie mogą implementować żadnego typu interfejsu.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.

Wystąpienie ReadOnlySpan<T> jest często używane do odwoływania się do elementów tablicy lub części tablicy.A ReadOnlySpan<T> instance is often used to reference the elements of an array or a portion of an array. W przeciwieństwie do tablicy, wystąpienie ReadOnlySpan<T> może wskazywać na pamięć zarządzaną, pamięć natywną lub pamięć zarządzaną na stosie.Unlike an array, however, a ReadOnlySpan<T> instance can point to managed memory, native memory, or memory managed on the stack.

Konstruktory

ReadOnlySpan<T>(T[])

Tworzy nowy ReadOnlySpan<T> w całości dla określonej tablicy.Creates a new ReadOnlySpan<T> over the entirety of a specified array.

ReadOnlySpan<T>(T[], Int32, Int32)

Tworzy nowy ReadOnlySpan<T> zawierający określoną liczbę elementów tablicy, zaczynając od określonego indeksu.Creates a new ReadOnlySpan<T> that includes a specified number of elements of an array starting at a specified index.

ReadOnlySpan<T>(Void*, Int32)

Tworzy nowy ReadOnlySpan<T> z określonej liczby elementów T, zaczynając od określonego adresu pamięci.Creates a new ReadOnlySpan<T> from a specified number of T elements starting at a specified memory address.

Właściwości

Empty

Zwraca puste ReadOnlySpan<T>.Returns an empty ReadOnlySpan<T>.

IsEmpty

Zwraca wartość wskazującą, że bieżący zakres tylko do odczytu jest pusty.Returns a value that indicates the current read-only span is empty.

Item[Int32]

Pobiera element z zakresu tylko do odczytu w określonym indeksie liczonym od zera.Gets an item from the read-only span at the specified zero-based index.

Length

Liczba elementów w zakresie tylko do odczytu.The number of items in the read-only span.

Metody

CopyTo(Span<T>)

Kopiuje zawartość tego ReadOnlySpan<T> do Span<T>docelowej.Copies the contents of this ReadOnlySpan<T> into a destination Span<T>.

Equals(Object)

Nieobsługiwane.Not supported. Zgłasza NotSupportedException.Throws a NotSupportedException.

GetEnumerator()

Zwraca moduł wyliczający dla tego ReadOnlySpan<T>.Returns an enumerator for this ReadOnlySpan<T>.

GetHashCode()

Nieobsługiwane.Not supported. Zgłasza NotSupportedException.Throws a NotSupportedException.

GetPinnableReference()

Odwołanie tylko do odczytu do obiektu typu T, które może być używane do przypinania i jest wymagane do obsługi zakresu w ramach ustalonej instrukcji.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)

Tworzy wycink poza bieżącym zakresem tylko do odczytu, który rozpoczyna się od określonego indeksu.Forms a slice out of the current read-only span that begins at a specified index.

Slice(Int32, Int32)

Tworzy wycink poza bieżącym zakresem tylko do odczytu, rozpoczynając od określonego indeksu przez określoną długość.Forms a slice out of the current read-only span starting at a specified index for a specified length.

ToArray()

Kopiuje zawartość tego zakresu tylko do odczytu do nowej tablicy.Copies the contents of this read-only span into a new array.

ToString()

Zwraca ciąg reprezentujący ten ReadOnlySpan<T>.Returns the string representation of this ReadOnlySpan<T>.

TryCopyTo(Span<T>)

Próbuje skopiować zawartość tego ReadOnlySpan<T> do Span<T> i zwraca wartość wskazującą, czy operacja zakończyła się pomyślnie.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.

Operatory

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

Zwraca wartość wskazującą, czy dwa wystąpienia ReadOnlySpan<T> są równe.Returns a value that indicates whether two ReadOnlySpan<T> instances are equal.

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

Definiuje niejawną konwersję ArraySegment<T> do ReadOnlySpan<T>.Defines an implicit conversion of an ArraySegment<T> to a ReadOnlySpan<T>.

Implicit(T[] to ReadOnlySpan<T>)

Definiuje niejawną konwersję tablicy do ReadOnlySpan<T>.Defines an implicit conversion of an array to a ReadOnlySpan<T>.

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

Zwraca wartość wskazującą, czy dwa wystąpienia ReadOnlySpan<T> nie są równe.Returns a value that indicates whether two ReadOnlySpan<T> instances are not equal.

Metody rozszerzania

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

Wyszukuje w całym posortowanym ReadOnlySpan<T> wartość przy użyciu określonego IComparable<T> generycznego interfejsu.Searches an entire sorted ReadOnlySpan<T> for a value using the specified IComparable<T> generic interface.

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

Wyszukuje całą posortowaną ReadOnlySpan<T> dla określonej wartości przy użyciu określonego TComparer typu ogólnego.Searches an entire sorted ReadOnlySpan<T> for a specified value using the specified TComparer generic type.

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

Wyszukuje w całym posortowanym ReadOnlySpan<T> wartość przy użyciu określonego TComparable typu ogólnego.Searches an entire sorted ReadOnlySpan<T> for a value using the specified TComparable generic type.

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

Wskazuje, czy określona wartość jest znaleziona w zakresie tylko do odczytu.Indicates whether a specified value is found in a read-only span. Wartości są porównywane przy użyciu IEquatable {T}. Equals (T).Values are compared using IEquatable{T}.Equals(T).

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

Określa, czy określona sekwencja pojawia się na końcu zakresu tylko do odczytu.Determines whether the specified sequence appears at the end of a read-only span.

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

Wyszukuje określoną wartość i zwraca indeks pierwszego wystąpienia.Searches for the specified value and returns the index of its first occurrence. Wartości są porównywane przy użyciu IEquatable {T}. Equals (T).Values are compared using IEquatable{T}.Equals(T).

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

Wyszukuje określoną sekwencję i zwraca indeks pierwszego wystąpienia.Searches for the specified sequence and returns the index of its first occurrence. Wartości są porównywane przy użyciu IEquatable {T}. Equals (T).Values are compared using IEquatable{T}.Equals(T).

IndexOfAny<T>(ReadOnlySpan<T>, T, T)

Wyszukuje pierwszy indeks wszelkich określonych wartości podobne do wywoływania IndexOf kilka razy przy użyciu operatora logicznego OR.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)

Wyszukuje pierwszy indeks wszelkich określonych wartości podobne do wywoływania IndexOf kilka razy przy użyciu operatora logicznego OR.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>)

Wyszukuje pierwszy indeks wszelkich określonych wartości podobne do wywoływania IndexOf kilka razy przy użyciu operatora logicznego OR.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)

Wyszukuje określoną wartość i zwraca indeks ostatniego wystąpienia.Searches for the specified value and returns the index of its last occurrence. Wartości są porównywane przy użyciu IEquatable {T}. Equals (T).Values are compared using IEquatable{T}.Equals(T).

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

Wyszukuje określoną sekwencję i zwraca indeks ostatniego wystąpienia.Searches for the specified sequence and returns the index of its last occurrence. Wartości są porównywane przy użyciu IEquatable {T}. Equals (T).Values are compared using IEquatable{T}.Equals(T).

LastIndexOfAny<T>(ReadOnlySpan<T>, T, T)

Wyszukuje ostatni indeks wszelkich określonych wartości podobnie do wywoływania LastIndexOf kilka razy przy użyciu operatora logicznego OR.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)

Wyszukuje ostatni indeks wszelkich określonych wartości podobnie do wywoływania LastIndexOf kilka razy przy użyciu operatora logicznego OR.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>)

Wyszukuje ostatni indeks wszelkich określonych wartości podobnie do wywoływania LastIndexOf kilka razy przy użyciu operatora logicznego OR.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>)

Określa, czy dwie sekwencje tylko do odczytu nakładają się na pamięć.Determines whether two read-only sequences overlap in memory.

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

Określa, czy dwie sekwencje tylko do odczytu nakładają się na pamięć i wyprowadzają przesunięcie elementu.Determines whether two read-only sequences overlap in memory and outputs the element offset.

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

Określa względną kolejność dwóch sekwencji tylko do odczytu, porównując ich elementy przy użyciu obiektu 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>)

Określa, czy dwie sekwencje tylko do odczytu są równe, porównując elementy przy użyciu IEquatable {T}. Equals (T).Determines whether two read-only sequences are equal by comparing the elements using IEquatable{T}.Equals(T).

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

Określa, czy określona sekwencja pojawia się na początku zakresu tylko do odczytu.Determines whether a specified sequence appears at the start of a read-only span.

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

Usuwa wszystkie wystąpienia wiodące i końcowe określonego elementu z zakresu tylko do odczytu.Removes all leading and trailing occurrences of a specified element from a read-only span.

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

Usuwa wszystkie wystąpienia wiodące i końcowe zestawu elementów określonych w zakresie tylko do odczytu z zakresu tylko do odczytu.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)

Usuwa wszystkie końcowe wystąpienia określonego elementu z zakresu tylko do odczytu.Removes all trailing occurrences of a specified element from a read-only span.

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

Usuwa wszystkie końcowe wystąpienia zestawu elementów określone w zakresie tylko do odczytu z zakresu tylko do odczytu.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)

Usuwa wszystkie wiodące wystąpienia określonego elementu z zakresu.Removes all leading occurrences of a specified element from the span.

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

Usuwa wszystkie wiodące wystąpienia zestawu elementów określonego w zakresie tylko do odczytu z zakresu.Removes all leading occurrences of a set of elements specified in a read-only span from the span.

Dotyczy