Sdílet prostřednictvím


Unsafe.Subtract Metoda

Definice

Přetížení

Subtract<T>(Void*, Int32)

Odečte posun prvku od daného nespravovaného ukazatele.

Subtract<T>(T, Int32)

Odečte posun od daného spravovaného ukazatele.

Subtract<T>(T, IntPtr)

Odečte posun prvku od daného spravovaného ukazatele.

Subtract<T>(T, UIntPtr)

Odečte posun prvku od daného spravovaného ukazatele.

Subtract<T>(Void*, Int32)

Zdroj:
Unsafe.cs
Zdroj:
Unsafe.cs
Zdroj:
Unsafe.cs

Důležité

Toto rozhraní API neodpovídá specifikaci CLS.

Odečte posun prvku od daného nespravovaného ukazatele.

public:
generic <typename T>
 static void* Subtract(void* source, int elementOffset);
public static void* Subtract<T> (void* source, int elementOffset);
[System.CLSCompliant(false)]
public static void* Subtract<T> (void* source, int elementOffset);
static member Subtract : nativeptr<unit> * int -> nativeptr<unit>
[<System.CLSCompliant(false)>]
static member Subtract : nativeptr<unit> * int -> nativeptr<unit>

Parametry typu

T

Typ, jehož velikost se použije jako faktor měřítka pro elementOffset.

Parametry

source
Void*

Nespravovaný ukazatel, od který chcete odečíst posun.

elementOffset
Int32

Odsazení, které se má odečíst.

Návraty

Void*

Nový nespravovaný ukazatel, který odráží odčítání zadaného posunu od zdrojového ukazatele.

Atributy

Poznámky

Parametr elementOffset je počet Tprvků velikosti (nikoli bajtů), které se mají odebrat z source ukazatele. Například s ohledem na ptr zdrojového ukazatele vrátí volání Unsafe.Subtract<int>(ptr, 20) nový ukazatel, jehož adresa ukazuje 80 bajtů (= 20 elementů × 4 bajty na prvek) před ptr.

Pokud elementOffset je počítaná hodnota místo pevně zakódovaného literálu, měli by volající zvážit možnost celočíselného přetečení. Například ve volání Unsafe.Subtract<int>(ptr, a * b)musí volající zajistit, aby mezilehelná hodnota a * b nepřetékala hranice .Int32

Platí pro

Subtract<T>(T, Int32)

Zdroj:
Unsafe.cs
Zdroj:
Unsafe.cs
Zdroj:
Unsafe.cs

Odečte posun od daného spravovaného ukazatele.

public:
generic <typename T>
 static T % Subtract(T % source, int elementOffset);
public static ref T Subtract<T> (ref T source, int elementOffset);
static member Subtract : 'T * int -> 'T
Public Shared Function Subtract(Of T) (ByRef source As T, elementOffset As Integer) As T

Parametry typu

T

Typ prvku spravovaného ukazatele.

Parametry

source
T

Spravovaný ukazatel, od který chcete odečíst posun.

elementOffset
Int32

Odsazení, které se má odečíst.

Návraty

T

Nový spravovaný ukazatel, který odráží odčítání zadaného posunu od zdrojového ukazatele.

Poznámky

Parametr elementOffset je počet Tprvků velikosti (nikoli bajtů), které se mají odečíst od source ukazatele. Například u ptr zdrojového ukazatele typu ref intvrátí volání Unsafe.Subtract<int>(ref ptr, 20) nový ukazatel, jehož adresa ukazuje 80 bajtů (= 20 elementů × 4 bajty na prvek) před ptr.

Pokud elementOffset je počítaná hodnota místo pevně zakódovaného literálu, měli by volající zvážit možnost celočíselného přetečení. Například ve volání Unsafe.Subtract<int>(ref ptr, a * b)musí volající zajistit, aby mezilehelná hodnota a * b nepřetékala hranice .Int32

Platí pro

Subtract<T>(T, IntPtr)

Zdroj:
Unsafe.cs
Zdroj:
Unsafe.cs
Zdroj:
Unsafe.cs

Odečte posun prvku od daného spravovaného ukazatele.

public:
generic <typename T>
 static T % Subtract(T % source, IntPtr elementOffset);
public static ref T Subtract<T> (ref T source, IntPtr elementOffset);
static member Subtract : 'T * nativeint -> 'T
Public Shared Function Subtract(Of T) (ByRef source As T, elementOffset As IntPtr) As T

Parametry typu

T

Typ prvku spravovaného ukazatele.

Parametry

source
T

Spravovaný ukazatel, od který chcete odečíst posun.

elementOffset
IntPtr

nativeint

Odsazení, které se má odečíst.

Návraty

T

Nový spravovaný ukazatel, který odráží odčítání zadaného posunu od zdrojového ukazatele.

Poznámky

Parametr elementOffset je počet Tprvků velikosti (nikoli bajtů), které se mají odečíst od source ukazatele. Například u ptr zdrojového ukazatele typu ref intvrátí volání Unsafe.Subtract<int>(ref ptr, (nint)20) nový ukazatel, jehož adresa ukazuje 80 bajtů (= 20 elementů × 4 bajty na prvek) před ptr.

Pokud elementOffset je počítaná hodnota místo pevně zakódovaného literálu, měli by volající zvážit možnost celočíselného přetečení. Například ve volání Unsafe.Subtract<int>(ref ptr, a * b)musí volající zajistit, aby mezilehelná hodnota a * b nepřetékala hranice .IntPtr

Platí pro

Subtract<T>(T, UIntPtr)

Zdroj:
Unsafe.cs
Zdroj:
Unsafe.cs
Zdroj:
Unsafe.cs

Důležité

Toto rozhraní API neodpovídá specifikaci CLS.

Odečte posun prvku od daného spravovaného ukazatele.

public:
generic <typename T>
 static T % Subtract(T % source, UIntPtr elementOffset);
public static ref T Subtract<T> (ref T source, nuint elementOffset);
[System.CLSCompliant(false)]
public static ref T Subtract<T> (ref T source, UIntPtr elementOffset);
static member Subtract : 'T * unativeint -> 'T
[<System.CLSCompliant(false)>]
static member Subtract : 'T * unativeint -> 'T
Public Shared Function Subtract(Of T) (ByRef source As T, elementOffset As UIntPtr) As T

Parametry typu

T

Typ prvku spravovaného ukazatele.

Parametry

source
T

Spravovaný ukazatel, od který chcete odečíst posun.

elementOffset
UIntPtr

nuint

unativeint

Odsazení, které se má odečíst.

Návraty

T

Nový spravovaný ukazatel, který odráží odčítání zadaného posunu od zdrojového ukazatele.

Atributy

Poznámky

Parametr elementOffset je počet Tprvků velikosti (nikoli bajtů), které se mají odečíst od source ukazatele. Například u ptr zdrojového ukazatele typu ref intvrátí volání Unsafe.Subtract<int>(ref ptr, (nuint)20) nový ukazatel, jehož adresa ukazuje 80 bajtů (= 20 elementů × 4 bajty na prvek) před ptr.

Pokud elementOffset je počítaná hodnota místo pevně zakódovaného literálu, měli by volající zvážit možnost celočíselného přetečení. Například ve volání Unsafe.Subtract<int>(ref ptr, a * b)musí volající zajistit, aby mezilehelná hodnota a * b nepřetékala hranice .UIntPtr

Platí pro