ReadOnlySpan<T> Struktura
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Zapewnia bezpieczną i bezpieczną pamięć reprezentację tylko do odczytu ciągłego regionu dowolnego pamięci.
generic <typename T>
public value class ReadOnlySpan
public readonly ref struct ReadOnlySpan<T>
[System.Runtime.InteropServices.Marshalling.NativeMarshalling(typeof(System.Runtime.InteropServices.Marshalling.ReadOnlySpanMarshaller<,>))]
public readonly ref struct ReadOnlySpan<T>
type ReadOnlySpan<'T> = struct
[<System.Runtime.InteropServices.Marshalling.NativeMarshalling(typeof(System.Runtime.InteropServices.Marshalling.ReadOnlySpanMarshaller<,>))>]
type ReadOnlySpan<'T> = struct
Public Structure ReadOnlySpan(Of T)
Parametry typu
- T
Typ elementów w ReadOnlySpan<T>.
- Dziedziczenie
- Atrybuty
Uwagi
ReadOnlySpan<T>
jest strukturą ref, która jest przydzielana na stosie i nigdy nie może uciec do zarządzanej sterty. Typy struktury ref mają wiele ograniczeń, aby upewnić się, że nie mogą być promowane do zarządzanej sterty, w tym, że nie mogą być one w polu, przechwycone w wyrażeniach lambda, przypisane do zmiennych typu Object, przypisane do dynamic
zmiennych i nie mogą implementować żadnego typu interfejsu.
Wystąpienie ReadOnlySpan<T>
jest często używane do odwołowania się do elementów tablicy lub części tablicy. W przeciwieństwie do tablicy wystąpienie ReadOnlySpan<T>
może jednak wskazywać pamięć zarządzaną, pamięć natywną lub pamięć zarządzaną na stosie.
Konstruktory
ReadOnlySpan<T>(T) |
Tworzy nową ReadOnlySpan<T> długości 1 wokół określonego odwołania. |
ReadOnlySpan<T>(T[]) |
Tworzy nowe ReadOnlySpan<T> w całej określonej tablicy. |
ReadOnlySpan<T>(T[], Int32, Int32) |
Tworzy nową ReadOnlySpan<T> zawierającą określoną liczbę elementów tablicy rozpoczynających się od określonego indeksu. |
ReadOnlySpan<T>(Void*, Int32) |
Tworzy nowy ReadOnlySpan<T> na podstawie określonej liczby elementów |
Właściwości
Empty |
Zwraca pusty ReadOnlySpan<T>. |
IsEmpty |
Zwraca wartość wskazującą, że bieżący zakres tylko do odczytu jest pusty. |
Item[Int32] |
Pobiera element z zakresu tylko do odczytu w określonym indeksie zerowym. |
Length |
Liczba elementów w zakresie tylko do odczytu. |
Metody
CastUp<TDerived>(ReadOnlySpan<TDerived>) |
Rzutuje zakres tylko do odczytu |
CopyTo(Span<T>) |
Kopiuje zawartość tego ReadOnlySpan<T> do miejsca docelowego Span<T>. |
Equals(Object) |
Przestarzałe.
Przestarzałe.
Nieobsługiwane. Zgłasza NotSupportedException. |
GetEnumerator() |
Zwraca moduł wyliczający dla tego ReadOnlySpan<T>. |
GetHashCode() |
Przestarzałe.
Nieobsługiwane. Zgłasza NotSupportedException. |
GetPinnableReference() |
Zwraca odwołanie tylko do odczytu do obiektu typu T, którego można użyć do przypinania. Ta metoda ma obsługiwać kompilatory platformy .NET i nie ma być wywoływana przez kod użytkownika. |
Slice(Int32) |
Tworzy wycinkę bieżącego zakresu tylko do odczytu, który rozpoczyna się od określonego indeksu. |
Slice(Int32, Int32) |
Tworzy wycinkę bieżącego zakresu tylko do odczytu rozpoczynającego się od określonego indeksu dla określonej długości. |
ToArray() |
Kopiuje zawartość tego zakresu tylko do odczytu do nowej tablicy. |
ToString() |
Zwraca reprezentację ciągu tego 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. |
Operatory
Equality(ReadOnlySpan<T>, ReadOnlySpan<T>) |
Zwraca wartość wskazującą, czy dwa wystąpienia ReadOnlySpan<T> są równe. |
Implicit(ArraySegment<T> to ReadOnlySpan<T>) |
Definiuje niejawną konwersję ArraySegment<T> na ReadOnlySpan<T>. |
Implicit(T[] to ReadOnlySpan<T>) |
Definiuje niejawną konwersję tablicy na ReadOnlySpan<T>. |
Inequality(ReadOnlySpan<T>, ReadOnlySpan<T>) |
Zwraca wartość wskazującą, czy dwa wystąpienia ReadOnlySpan<T> nie są równe. |
Metody rozszerzania
ToImmutableArray<T>(ReadOnlySpan<T>) |
Tworzy niezmienną tablicę zawartości z określonych elementów. |
BinarySearch<T>(ReadOnlySpan<T>, IComparable<T>) |
Wyszukuje całe posortowane ReadOnlySpan<T> dla wartości przy użyciu określonego interfejsu ogólnego IComparable<T>. |
BinarySearch<T,TComparer>(ReadOnlySpan<T>, T, TComparer) |
Wyszukuje całe posortowane ReadOnlySpan<T> dla określonej wartości przy użyciu określonego typu ogólnego |
BinarySearch<T,TComparable>(ReadOnlySpan<T>, TComparable) |
Wyszukuje całą posortowaną ReadOnlySpan<T> dla wartości przy użyciu określonego typu ogólnego |
CommonPrefixLength<T>(ReadOnlySpan<T>, ReadOnlySpan<T>) |
Znajduje długość dowolnego wspólnego prefiksu współużytkowanego między |
CommonPrefixLength<T>(ReadOnlySpan<T>, ReadOnlySpan<T>, IEqualityComparer<T>) |
Określa długość dowolnego wspólnego prefiksu współużytkowanego między |
Contains<T>(ReadOnlySpan<T>, T) |
Wskazuje, czy określona wartość znajduje się w zakresie tylko do odczytu. Wartości są porównywane przy użyciu funkcji IEquatable{T}. Equals(T). |
ContainsAny<T>(ReadOnlySpan<T>, T, T) |
Wyszukuje wystąpienie |
ContainsAny<T>(ReadOnlySpan<T>, T, T, T) |
Wyszukuje wystąpienie |
ContainsAny<T>(ReadOnlySpan<T>, SearchValues<T>) |
Wyszukuje wystąpienie dowolnego z określonych |
ContainsAny<T>(ReadOnlySpan<T>, ReadOnlySpan<T>) |
Wyszukuje wystąpienie dowolnego z określonych |
ContainsAnyExcept<T>(ReadOnlySpan<T>, T) |
Wyszukuje dowolną wartość inną niż określona |
ContainsAnyExcept<T>(ReadOnlySpan<T>, T, T) |
Wyszukuje dowolną wartość inną niż |
ContainsAnyExcept<T>(ReadOnlySpan<T>, T, T, T) |
Wyszukuje dowolną wartość inną niż |
ContainsAnyExcept<T>(ReadOnlySpan<T>, SearchValues<T>) |
Wyszukuje dowolną wartość inną niż określona |
ContainsAnyExcept<T>(ReadOnlySpan<T>, ReadOnlySpan<T>) |
Wyszukuje dowolną wartość inną niż określona |
ContainsAnyExceptInRange<T>(ReadOnlySpan<T>, T, T) |
Wyszukuje dowolną wartość poza zakresem między |
ContainsAnyInRange<T>(ReadOnlySpan<T>, T, T) |
Wyszukuje dowolną wartość w zakresie między |
Count<T>(ReadOnlySpan<T>, T) |
Zlicza liczbę wystąpień określonego |
Count<T>(ReadOnlySpan<T>, ReadOnlySpan<T>) |
Zlicza liczbę wystąpień |
EndsWith<T>(ReadOnlySpan<T>, T) |
Określa, czy określona wartość pojawia się na końcu zakresu. |
EndsWith<T>(ReadOnlySpan<T>, ReadOnlySpan<T>) |
Określa, czy określona sekwencja pojawia się na końcu zakresu tylko do odczytu. |
IndexOf<T>(ReadOnlySpan<T>, T) |
Wyszukuje określoną wartość i zwraca indeks pierwszego wystąpienia. Wartości są porównywane przy użyciu funkcji IEquatable{T}. Equals(T). |
IndexOf<T>(ReadOnlySpan<T>, ReadOnlySpan<T>) |
Wyszukuje określoną sekwencję i zwraca indeks pierwszego wystąpienia. Wartości są porównywane przy użyciu funkcji IEquatable{T}. Equals(T). |
IndexOfAny<T>(ReadOnlySpan<T>, T, T) |
Wyszukuje pierwszy indeks dowolnej z określonych wartości podobny do wywołania funkcji IndexOf kilka razy za pomocą operatora logicznego OR. |
IndexOfAny<T>(ReadOnlySpan<T>, T, T, T) |
Wyszukuje pierwszy indeks dowolnej z określonych wartości podobny do wywołania funkcji IndexOf kilka razy za pomocą operatora logicznego OR. |
IndexOfAny<T>(ReadOnlySpan<T>, SearchValues<T>) |
Wyszukuje pierwszy indeks dowolnej z określonych wartości. |
IndexOfAny<T>(ReadOnlySpan<T>, ReadOnlySpan<T>) |
Wyszukuje pierwszy indeks dowolnej z określonych wartości podobny do wywołania funkcji IndexOf kilka razy za pomocą operatora logicznego OR. |
IndexOfAnyExcept<T>(ReadOnlySpan<T>, T) |
Wyszukuje pierwszy indeks dowolnej wartości innej niż określona |
IndexOfAnyExcept<T>(ReadOnlySpan<T>, T, T) |
Wyszukuje pierwszy indeks dowolnej wartości innej niż określona |
IndexOfAnyExcept<T>(ReadOnlySpan<T>, T, T, T) |
Wyszukuje pierwszy indeks dowolnej wartości innej niż określona |
IndexOfAnyExcept<T>(ReadOnlySpan<T>, SearchValues<T>) |
Wyszukuje pierwszy indeks dowolnej wartości innej niż określona |
IndexOfAnyExcept<T>(ReadOnlySpan<T>, ReadOnlySpan<T>) |
Wyszukuje pierwszy indeks dowolnej wartości innej niż określona |
IndexOfAnyExceptInRange<T>(ReadOnlySpan<T>, T, T) |
Wyszukuje pierwszy indeks dowolnej wartości poza zakresem między |
IndexOfAnyInRange<T>(ReadOnlySpan<T>, T, T) |
Wyszukuje pierwszy indeks dowolnej wartości w zakresie od |
LastIndexOf<T>(ReadOnlySpan<T>, T) |
Wyszukuje określoną wartość i zwraca indeks ostatniego wystąpienia. Wartości są porównywane przy użyciu funkcji IEquatable{T}. Equals(T). |
LastIndexOf<T>(ReadOnlySpan<T>, ReadOnlySpan<T>) |
Wyszukuje określoną sekwencję i zwraca indeks ostatniego wystąpienia. Wartości są porównywane przy użyciu funkcji IEquatable{T}. Equals(T). |
LastIndexOfAny<T>(ReadOnlySpan<T>, T, T) |
Wyszukuje ostatni indeks dowolnej z określonych wartości podobnych do wywołania LastIndexOf kilka razy za pomocą operatora logicznego OR. |
LastIndexOfAny<T>(ReadOnlySpan<T>, T, T, T) |
Wyszukuje ostatni indeks dowolnej z określonych wartości podobnych do wywołania LastIndexOf kilka razy za pomocą operatora logicznego OR. |
LastIndexOfAny<T>(ReadOnlySpan<T>, SearchValues<T>) |
Wyszukuje ostatni indeks dowolnej z określonych wartości. |
LastIndexOfAny<T>(ReadOnlySpan<T>, ReadOnlySpan<T>) |
Wyszukuje ostatni indeks dowolnej z określonych wartości podobnych do wywołania LastIndexOf kilka razy za pomocą operatora logicznego OR. |
LastIndexOfAnyExcept<T>(ReadOnlySpan<T>, T) |
Wyszukuje ostatni indeks dowolnej wartości innej niż określona |
LastIndexOfAnyExcept<T>(ReadOnlySpan<T>, T, T) |
Wyszukuje ostatni indeks dowolnej wartości innej niż określona |
LastIndexOfAnyExcept<T>(ReadOnlySpan<T>, T, T, T) |
Wyszukuje ostatni indeks dowolnej wartości innej niż określona |
LastIndexOfAnyExcept<T>(ReadOnlySpan<T>, SearchValues<T>) |
Wyszukuje ostatni indeks dowolnej wartości innej niż określona |
LastIndexOfAnyExcept<T>(ReadOnlySpan<T>, ReadOnlySpan<T>) |
Wyszukuje ostatni indeks dowolnej wartości innej niż określona |
LastIndexOfAnyExceptInRange<T>(ReadOnlySpan<T>, T, T) |
Wyszukuje ostatni indeks dowolnej wartości poza zakresem między |
LastIndexOfAnyInRange<T>(ReadOnlySpan<T>, T, T) |
Wyszukuje ostatni indeks dowolnej wartości w zakresie od |
Overlaps<T>(ReadOnlySpan<T>, ReadOnlySpan<T>) |
Określa, czy dwie sekwencje tylko do odczytu nakładają się w pamięci. |
Overlaps<T>(ReadOnlySpan<T>, ReadOnlySpan<T>, Int32) |
Określa, czy dwie sekwencje tylko do odczytu nakładają się w pamięci i wyprowadza przesunięcie elementu. |
Replace<T>(ReadOnlySpan<T>, Span<T>, T, T) |
Kopiuje |
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 funkcji 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 funkcji IEquatable{T}. Equals(T). |
SequenceEqual<T>(ReadOnlySpan<T>, ReadOnlySpan<T>, IEqualityComparer<T>) |
Określa, czy dwie sekwencje są równe, porównując elementy przy użyciu IEqualityComparer<T>. |
Split<T>(ReadOnlySpan<T>, T) |
Zapewnia bezpieczną i bezpieczną pamięć reprezentację tylko do odczytu ciągłego regionu dowolnego pamięci. |
Split<T>(ReadOnlySpan<T>, ReadOnlySpan<T>) |
Zapewnia bezpieczną i bezpieczną pamięć reprezentację tylko do odczytu ciągłego regionu dowolnego pamięci. |
SplitAny<T>(ReadOnlySpan<T>, SearchValues<T>) |
Zapewnia bezpieczną i bezpieczną pamięć reprezentację tylko do odczytu ciągłego regionu dowolnego pamięci. |
SplitAny<T>(ReadOnlySpan<T>, ReadOnlySpan<T>) |
Zapewnia bezpieczną i bezpieczną pamięć reprezentację tylko do odczytu ciągłego regionu dowolnego pamięci. |
StartsWith<T>(ReadOnlySpan<T>, T) |
Określa, czy określona wartość pojawia się na początku zakresu. |
StartsWith<T>(ReadOnlySpan<T>, ReadOnlySpan<T>) |
Określa, czy określona sekwencja pojawia się na początku zakresu tylko do odczytu. |
Trim<T>(ReadOnlySpan<T>, T) |
Usuwa wszystkie wystąpienia wiodące i końcowe określonego elementu z zakresu tylko do odczytu. |
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 z zakresu tylko do odczytu. |
TrimEnd<T>(ReadOnlySpan<T>, T) |
Usuwa wszystkie końcowe wystąpienia określonego elementu z zakresu tylko do odczytu. |
TrimEnd<T>(ReadOnlySpan<T>, ReadOnlySpan<T>) |
Usuwa wszystkie końcowe wystąpienia zestawu elementów określonych w zakresie tylko do odczytu z zakresu tylko do odczytu z zakresu tylko do odczytu. |
TrimStart<T>(ReadOnlySpan<T>, T) |
Usuwa wszystkie wiodące wystąpienia określonego elementu z zakresu. |
TrimStart<T>(ReadOnlySpan<T>, ReadOnlySpan<T>) |
Usuwa wszystkie wiodące wystąpienia zestawu elementów określonych w zakresie tylko do odczytu z zakresu. |
Dotyczy
Zobacz też
- typy związane z pamięcią i zakresem
- > <pamięci T> i<Span>