ReadOnlySpan<T> Struktura
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Poskytuje typově bezpečnou a paměťově bezpečnou reprezentaci jen pro čtení souvislé oblasti libovolné paměti.
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 položek v ReadOnlySpan<T>.
- Dědičnost
- Atributy
Poznámky
ReadOnlySpan<T>
je ref struktury, která je přidělena v zásobníku a nikdy nemůže utéct ke spravované haldě. Typy ref struktury mají řadu omezení, aby se zajistilo, že je nelze zvýšit na spravovanou haldu, včetně toho, že nelze zachycovat, zachytit ve výrazech lambda, přiřadit proměnným typu Object, přiřadit k dynamic
proměnných a nemohou implementovat žádný typ rozhraní.
Instance ReadOnlySpan<T>
se často používá k odkazování na prvky pole nebo části pole. Na rozdíl od pole ale instance ReadOnlySpan<T>
může odkazovat na spravovanou paměť, nativní paměť nebo paměť spravovanou v zásobníku.
Konstruktory
ReadOnlySpan<T>(T) |
Vytvoří nový ReadOnlySpan<T> o délce 1 kolem zadaného odkazu. |
ReadOnlySpan<T>(T[]) |
Vytvoří nový ReadOnlySpan<T> nad celou zadanou maticí. |
ReadOnlySpan<T>(T[], Int32, Int32) |
Vytvoří nový ReadOnlySpan<T>, který obsahuje zadaný počet prvků pole počínaje zadaným indexem. |
ReadOnlySpan<T>(Void*, Int32) |
Vytvoří nový ReadOnlySpan<T> ze zadaného počtu |
Vlastnosti
Empty |
Vrátí prázdnou ReadOnlySpan<T>. |
IsEmpty |
Vrátí hodnotu, která označuje, že aktuální rozsah jen pro čtení je prázdný. |
Item[Int32] |
Získá položku z rozsahu jen pro čtení v zadaném indexu založeném na nule. |
Length |
Počet položek v rozsahu jen pro čtení. |
Metody
CastUp<TDerived>(ReadOnlySpan<TDerived>) |
Přetypuje rozsah jen pro čtení |
CopyTo(Span<T>) |
Zkopíruje obsah tohoto ReadOnlySpan<T> do cílového Span<T>. |
Equals(Object) |
Zastaralé.
Zastaralé.
Nepodporuje se. Vyvolá NotSupportedException. |
GetEnumerator() |
Vrátí enumerátor pro tento ReadOnlySpan<T>. |
GetHashCode() |
Zastaralé.
Nepodporuje se. Vyvolá NotSupportedException. |
GetPinnableReference() |
Vrátí odkaz jen pro čtení na objekt typu T, který lze použít pro připnutí. Tato metoda je určena k podpoře kompilátorů .NET a není určena k zavolání uživatelským kódem. |
Slice(Int32) |
Vytvoří řez z aktuálního rozsahu jen pro čtení, který začíná v zadaném indexu. |
Slice(Int32, Int32) |
Vytvoří řez z aktuálního rozsahu jen pro čtení počínaje zadaným indexem pro zadanou délku. |
ToArray() |
Zkopíruje obsah tohoto rozsahu jen pro čtení do nového pole. |
ToString() |
Vrátí řetězcovou reprezentaci tohoto ReadOnlySpan<T>. |
TryCopyTo(Span<T>) |
Pokusí se zkopírovat obsah tohoto ReadOnlySpan<T> do Span<T> a vrátí hodnotu označující, zda operace proběhla úspěšně. |
Operátory
Equality(ReadOnlySpan<T>, ReadOnlySpan<T>) |
Vrátí hodnotu, která určuje, zda jsou dvě ReadOnlySpan<T> instance stejné. |
Implicit(ArraySegment<T> to ReadOnlySpan<T>) |
Definuje implicitní převod ArraySegment<T> na ReadOnlySpan<T>. |
Implicit(T[] to ReadOnlySpan<T>) |
Definuje implicitní převod pole na ReadOnlySpan<T>. |
Inequality(ReadOnlySpan<T>, ReadOnlySpan<T>) |
Vrátí hodnotu, která určuje, jestli se dvě ReadOnlySpan<T> instance nerovnají. |
Metody rozšíření
ToImmutableArray<T>(ReadOnlySpan<T>) |
Vytvoří neměnné pole obsahu ze zadaných prvků. |
BinarySearch<T>(ReadOnlySpan<T>, IComparable<T>) |
Vyhledá celou seřazenou ReadOnlySpan<T> hodnotu pomocí zadaného IComparable<T> obecného rozhraní. |
BinarySearch<T,TComparer>(ReadOnlySpan<T>, T, TComparer) |
Vyhledá celou seřazenou ReadOnlySpan<T> zadanou hodnotu pomocí zadaného |
BinarySearch<T,TComparable>(ReadOnlySpan<T>, TComparable) |
Vyhledá celou seřazenou ReadOnlySpan<T> hodnotu pomocí zadaného |
CommonPrefixLength<T>(ReadOnlySpan<T>, ReadOnlySpan<T>) |
Najde délku jakékoli společné předpony sdílené mezi |
CommonPrefixLength<T>(ReadOnlySpan<T>, ReadOnlySpan<T>, IEqualityComparer<T>) |
Určuje délku jakékoli společné předpony sdílené mezi |
Contains<T>(ReadOnlySpan<T>, T) |
Určuje, zda je zadaná hodnota nalezena v rozsahu jen pro čtení. Hodnoty se porovnávají pomocí IEquatable{T}. Rovná se(T). |
ContainsAny<T>(ReadOnlySpan<T>, T, T) |
Vyhledá výskyt |
ContainsAny<T>(ReadOnlySpan<T>, T, T, T) |
Vyhledá výskyt |
ContainsAny<T>(ReadOnlySpan<T>, SearchValues<T>) |
Vyhledá výskyt některého ze zadaných |
ContainsAny<T>(ReadOnlySpan<T>, ReadOnlySpan<T>) |
Vyhledá výskyt některého ze zadaných |
ContainsAnyExcept<T>(ReadOnlySpan<T>, T) |
Vyhledá jinou hodnotu než zadanou |
ContainsAnyExcept<T>(ReadOnlySpan<T>, T, T) |
Vyhledá jinou hodnotu než |
ContainsAnyExcept<T>(ReadOnlySpan<T>, T, T, T) |
Vyhledá jinou hodnotu než |
ContainsAnyExcept<T>(ReadOnlySpan<T>, SearchValues<T>) |
Vyhledá jinou hodnotu než zadanou |
ContainsAnyExcept<T>(ReadOnlySpan<T>, ReadOnlySpan<T>) |
Vyhledá jinou hodnotu než zadanou |
ContainsAnyExceptInRange<T>(ReadOnlySpan<T>, T, T) |
Vyhledá libovolnou hodnotu mimo rozsah mezi |
ContainsAnyInRange<T>(ReadOnlySpan<T>, T, T) |
Vyhledá libovolnou hodnotu v rozsahu mezi |
Count<T>(ReadOnlySpan<T>, T) |
Spočítá počet výskytů zadaných |
Count<T>(ReadOnlySpan<T>, ReadOnlySpan<T>) |
Spočítá počet výskytů |
EndsWith<T>(ReadOnlySpan<T>, T) |
Určuje, zda se zadaná hodnota zobrazí na konci rozsahu. |
EndsWith<T>(ReadOnlySpan<T>, ReadOnlySpan<T>) |
Určuje, zda se zadaná sekvence zobrazí na konci rozsahu jen pro čtení. |
IndexOf<T>(ReadOnlySpan<T>, T) |
Vyhledá zadanou hodnotu a vrátí index prvního výskytu. Hodnoty se porovnávají pomocí IEquatable{T}. Rovná se(T). |
IndexOf<T>(ReadOnlySpan<T>, ReadOnlySpan<T>) |
Vyhledá zadanou sekvenci a vrátí index prvního výskytu. Hodnoty se porovnávají pomocí IEquatable{T}. Rovná se(T). |
IndexOfAny<T>(ReadOnlySpan<T>, T, T) |
Vyhledá první index libovolné ze zadaných hodnot podobný volání IndexOf několikrát pomocí logického operátoru OR. |
IndexOfAny<T>(ReadOnlySpan<T>, T, T, T) |
Vyhledá první index libovolné ze zadaných hodnot podobný volání IndexOf několikrát pomocí logického operátoru OR. |
IndexOfAny<T>(ReadOnlySpan<T>, SearchValues<T>) |
Vyhledá první index libovolné ze zadaných hodnot. |
IndexOfAny<T>(ReadOnlySpan<T>, ReadOnlySpan<T>) |
Vyhledá první index libovolné ze zadaných hodnot podobný volání IndexOf několikrát pomocí logického operátoru OR. |
IndexOfAnyExcept<T>(ReadOnlySpan<T>, T) |
Vyhledá první index libovolné hodnoty kromě zadané |
IndexOfAnyExcept<T>(ReadOnlySpan<T>, T, T) |
Vyhledá první index jakékoli hodnoty jiné než zadané |
IndexOfAnyExcept<T>(ReadOnlySpan<T>, T, T, T) |
Vyhledá první index jakékoli hodnoty jiné než zadané |
IndexOfAnyExcept<T>(ReadOnlySpan<T>, SearchValues<T>) |
Vyhledá první index libovolné hodnoty kromě zadané |
IndexOfAnyExcept<T>(ReadOnlySpan<T>, ReadOnlySpan<T>) |
Vyhledá první index libovolné hodnoty kromě zadané |
IndexOfAnyExceptInRange<T>(ReadOnlySpan<T>, T, T) |
Vyhledá první index libovolné hodnoty mimo rozsah mezi |
IndexOfAnyInRange<T>(ReadOnlySpan<T>, T, T) |
Vyhledá první index libovolné hodnoty v rozsahu mezi |
LastIndexOf<T>(ReadOnlySpan<T>, T) |
Vyhledá zadanou hodnotu a vrátí index posledního výskytu. Hodnoty se porovnávají pomocí IEquatable{T}. Rovná se(T). |
LastIndexOf<T>(ReadOnlySpan<T>, ReadOnlySpan<T>) |
Vyhledá zadanou sekvenci a vrátí index posledního výskytu. Hodnoty se porovnávají pomocí IEquatable{T}. Rovná se(T). |
LastIndexOfAny<T>(ReadOnlySpan<T>, T, T) |
Vyhledá poslední index libovolné ze zadaných hodnot podobný volání LastIndexOf několikrát pomocí logického operátoru OR. |
LastIndexOfAny<T>(ReadOnlySpan<T>, T, T, T) |
Vyhledá poslední index libovolné ze zadaných hodnot podobný volání LastIndexOf několikrát pomocí logického operátoru OR. |
LastIndexOfAny<T>(ReadOnlySpan<T>, SearchValues<T>) |
Vyhledá poslední index libovolné ze zadaných hodnot. |
LastIndexOfAny<T>(ReadOnlySpan<T>, ReadOnlySpan<T>) |
Vyhledá poslední index libovolné ze zadaných hodnot podobný volání LastIndexOf několikrát pomocí logického operátoru OR. |
LastIndexOfAnyExcept<T>(ReadOnlySpan<T>, T) |
Vyhledá poslední index jakékoli jiné hodnoty, než je zadaná |
LastIndexOfAnyExcept<T>(ReadOnlySpan<T>, T, T) |
Vyhledá poslední index jakékoli hodnoty jiné než zadané |
LastIndexOfAnyExcept<T>(ReadOnlySpan<T>, T, T, T) |
Vyhledá poslední index jakékoli jiné hodnoty než zadaná |
LastIndexOfAnyExcept<T>(ReadOnlySpan<T>, SearchValues<T>) |
Vyhledá poslední index jakékoli jiné hodnoty, než je zadaná |
LastIndexOfAnyExcept<T>(ReadOnlySpan<T>, ReadOnlySpan<T>) |
Vyhledá poslední index jakékoli jiné hodnoty, než je zadaná |
LastIndexOfAnyExceptInRange<T>(ReadOnlySpan<T>, T, T) |
Vyhledá poslední index libovolné hodnoty mimo rozsah mezi |
LastIndexOfAnyInRange<T>(ReadOnlySpan<T>, T, T) |
Vyhledá poslední index libovolné hodnoty v rozsahu mezi |
Overlaps<T>(ReadOnlySpan<T>, ReadOnlySpan<T>) |
Určuje, zda se dvě sekvence jen pro čtení překrývají v paměti. |
Overlaps<T>(ReadOnlySpan<T>, ReadOnlySpan<T>, Int32) |
Určuje, zda se dvě sekvence jen pro čtení překrývají v paměti a výstupy posun prvku. |
Replace<T>(ReadOnlySpan<T>, Span<T>, T, T) |
Zkopíruje |
SequenceCompareTo<T>(ReadOnlySpan<T>, ReadOnlySpan<T>) |
Určuje relativní pořadí dvou sekvencí jen pro čtení porovnáním jejich prvků pomocí funkce IComparable{T}. CompareTo(T). |
SequenceEqual<T>(ReadOnlySpan<T>, ReadOnlySpan<T>) |
Určuje, zda jsou dvě sekvence jen pro čtení stejné porovnáním prvků pomocí IEquatable{T}. Rovná se(T). |
SequenceEqual<T>(ReadOnlySpan<T>, ReadOnlySpan<T>, IEqualityComparer<T>) |
Určuje, zda jsou dvě sekvence stejné porovnáním prvků pomocí IEqualityComparer<T>. |
Split<T>(ReadOnlySpan<T>, T) |
Poskytuje typově bezpečnou a paměťově bezpečnou reprezentaci jen pro čtení souvislé oblasti libovolné paměti. |
Split<T>(ReadOnlySpan<T>, ReadOnlySpan<T>) |
Poskytuje typově bezpečnou a paměťově bezpečnou reprezentaci jen pro čtení souvislé oblasti libovolné paměti. |
SplitAny<T>(ReadOnlySpan<T>, SearchValues<T>) |
Poskytuje typově bezpečnou a paměťově bezpečnou reprezentaci jen pro čtení souvislé oblasti libovolné paměti. |
SplitAny<T>(ReadOnlySpan<T>, ReadOnlySpan<T>) |
Poskytuje typově bezpečnou a paměťově bezpečnou reprezentaci jen pro čtení souvislé oblasti libovolné paměti. |
StartsWith<T>(ReadOnlySpan<T>, T) |
Určuje, zda se zadaná hodnota zobrazí na začátku rozsahu. |
StartsWith<T>(ReadOnlySpan<T>, ReadOnlySpan<T>) |
Určuje, zda se zadaná sekvence zobrazí na začátku rozsahu jen pro čtení. |
Trim<T>(ReadOnlySpan<T>, T) |
Odebere všechny počáteční a koncové výskyty zadaného prvku z rozsahu jen pro čtení. |
Trim<T>(ReadOnlySpan<T>, ReadOnlySpan<T>) |
Odebere všechny počáteční a koncové výskyty sady prvků zadaných v rozsahu jen pro čtení z rozsahu jen pro čtení. |
TrimEnd<T>(ReadOnlySpan<T>, T) |
Odebere všechny koncové výskyty zadaného prvku z rozsahu jen pro čtení. |
TrimEnd<T>(ReadOnlySpan<T>, ReadOnlySpan<T>) |
Odebere všechny koncové výskyty sady prvků zadaných v rozsahu jen pro čtení z rozsahu jen pro čtení. |
TrimStart<T>(ReadOnlySpan<T>, T) |
Odebere všechny počáteční výskyty zadaného prvku z rozsahu. |
TrimStart<T>(ReadOnlySpan<T>, ReadOnlySpan<T>) |
Odebere všechny počáteční výskyty sady prvků zadaných v rozsahu určeném jen pro čtení z rozsahu. |
Platí pro
Viz také
- typy související s pamětí a rozsahem
paměti T a T T