MemoryMarshal.Cast Methode
Definitie
Belangrijk
Bepaalde informatie heeft betrekking op een voorlopige productversie die aanzienlijk kan worden gewijzigd voordat deze wordt uitgebracht. Microsoft biedt geen enkele expliciete of impliciete garanties met betrekking tot de informatie die hier wordt verstrekt.
Overloads
| Name | Description |
|---|---|
| Cast<TFrom,TTo>(ReadOnlySpan<TFrom>) |
Casts a read-only span of one primitive type to a read-only span of another primitive type. |
| Cast<TFrom,TTo>(Span<TFrom>) |
Cast een span van één primitief type tot een span van een ander primitief type. |
Cast<TFrom,TTo>(ReadOnlySpan<TFrom>)
- Bron:
- MemoryMarshal.cs
- Bron:
- MemoryMarshal.cs
- Bron:
- MemoryMarshal.cs
- Bron:
- MemoryMarshal.cs
- Bron:
- MemoryMarshal.cs
Casts a read-only span of one primitive type to a read-only span of another primitive type.
public:
generic <typename TFrom, typename TTo>
where TFrom : value class where TTo : value class static ReadOnlySpan<TTo> Cast(ReadOnlySpan<TFrom> span);
public static ReadOnlySpan<TTo> Cast<TFrom,TTo>(ReadOnlySpan<TFrom> span) where TFrom : struct where TTo : struct;
static member Cast : ReadOnlySpan<'From (requires 'From : struct)> -> ReadOnlySpan<'o (requires 'o : struct)> (requires 'From : struct and 'o : struct)
Public Shared Function Cast(Of TFrom As Structure, TTo As Structure) (span As ReadOnlySpan(Of TFrom)) As ReadOnlySpan(Of TTo)
Type parameters
- TFrom
Het type bronspanne.
- TTo
Het type doelspanne.
Parameters
- span
- ReadOnlySpan<TFrom>
Het bronsegment dat moet worden geconverteerd.
Retouren
De geconverteerde alleen-lezenspanne.
Uitzonderingen
TFrom of TTo bevat beheerde objectverwijzingen.
De Length eigenschap van de nieuwe ReadOnlySpan<T> zou overschrijden MaxValue.
Opmerkingen
TFrom Noch TTo kan beheerde objectverwijzingen bevatten. De Cast methode voert deze controle uit tijdens runtime en genereert ArgumentException als de controle mislukt.
Deze methode wordt alleen ondersteund op platforms die onjuist uitgelijnde geheugentoegang ondersteunen of wanneer het geheugenblok op een andere manier wordt uitgelijnd.
Van toepassing op
Cast<TFrom,TTo>(Span<TFrom>)
- Bron:
- MemoryMarshal.cs
- Bron:
- MemoryMarshal.cs
- Bron:
- MemoryMarshal.cs
- Bron:
- MemoryMarshal.cs
- Bron:
- MemoryMarshal.cs
Cast een span van één primitief type tot een span van een ander primitief type.
public:
generic <typename TFrom, typename TTo>
where TFrom : value class where TTo : value class static Span<TTo> Cast(Span<TFrom> span);
public static Span<TTo> Cast<TFrom,TTo>(Span<TFrom> span) where TFrom : struct where TTo : struct;
[System.Runtime.CompilerServices.OverloadResolutionPriority(1)]
public static Span<TTo> Cast<TFrom,TTo>(Span<TFrom> span) where TFrom : struct where TTo : struct;
static member Cast : Span<'From (requires 'From : struct)> -> Span<'o (requires 'o : struct)> (requires 'From : struct and 'o : struct)
[<System.Runtime.CompilerServices.OverloadResolutionPriority(1)>]
static member Cast : Span<'From (requires 'From : struct)> -> Span<'o (requires 'o : struct)> (requires 'From : struct and 'o : struct)
Public Shared Function Cast(Of TFrom As Structure, TTo As Structure) (span As Span(Of TFrom)) As Span(Of TTo)
Type parameters
- TFrom
Het type bronspanne.
- TTo
Het type doelspanne.
Parameters
- span
- Span<TFrom>
Het bronsegment dat moet worden geconverteerd.
Retouren
Het geconverteerde bereik.
- Kenmerken
Uitzonderingen
TFrom of TTo bevat beheerde objectverwijzingen.
De Length eigenschap van de nieuwe ReadOnlySpan<T> zou overschrijden MaxValue.
Opmerkingen
TFrom Noch TTo kan beheerde objectverwijzingen bevatten. De Cast methode voert deze controle uit tijdens runtime en genereert ArgumentException als de controle mislukt.
Als de grootte van de twee typen verschillend is, combineert of splitst de cast waarden, wat leidt tot een wijziging in lengte.
Als dit bijvoorbeeld TFrom het resultaat is Int64, bevat het ReadOnlySpan<Int64> één waarde, 0x0100001111110F0F en TTo is Int32, bevat het resulterende ReadOnlySpan<Int32> twee waarden. De waarden worden 0x11110F0F en 0x01000011 op een little-endian-architectuur, zoals x86. In een big-endian-architectuur wordt de volgorde van de twee waarden omgekeerd, bijvoorbeeld 0x01000011, gevolgd door 0x11110F0F.
Als een ander voorbeeld: TFromInt32de ReadOnlySpan<Int32> waarden van 1, 2 en 3, en TTo dat is Int64, het resultaat ReadOnlySpan<Int64> bevat één waarde: 0x0000000200000001 op een little-endian-architectuur en 0x0000000100000002 op een big-endian-architectuur.
Deze methode wordt alleen ondersteund op platforms die onjuist uitgelijnde geheugentoegang ondersteunen of wanneer het geheugenblok op een andere manier wordt uitgelijnd.