Unsafe.SubtractByteOffset Metoda

Definicja

Przeciążenia

SubtractByteOffset<T>(T, IntPtr)

Odejmuje przesunięcie bajtów od danego zarządzanego wskaźnika.

SubtractByteOffset<T>(T, UIntPtr)

Odejmuje przesunięcie bajtów od danego zarządzanego wskaźnika.

SubtractByteOffset<T>(T, IntPtr)

Odejmuje przesunięcie bajtów od danego zarządzanego wskaźnika.

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

Parametry typu

T

Typ elementalny zarządzanego wskaźnika.

Parametry

source
T

Zarządzany wskaźnik odejmuje przesunięcie od.

byteOffset
IntPtr

nativeint

Przesunięcie w celu odejmowania.

Zwraca

T

Nowy zarządzany wskaźnik, który odzwierciedla odejmowanie określonego przesunięcia bajtów ze wskaźnika źródłowego.

Uwagi

Parametr byteOffset jest liczbą bajtów do usunięcia ze source wskaźnika. Na przykład, biorąc pod uwagę wskaźnik źródłowy ptr typu ref int, wywołanie Unsafe.SubtractByteOffset<int>(ref ptr, 20) zwróci nowy wskaźnik, którego punkty adresowe 20 bajtów przed ptr.

Jeśli byteOffset jest wartością obliczeniową, a nie literałem zakodowanym na stałe, wywołujące powinny rozważyć możliwość przepełnienia liczby całkowitej. Na przykład w wywołaniu Unsafe.SubtractByteOffset<int>(ref ptr, a * b)obiekt wywołujący musi upewnić się, że wartość a * b pośrednia nie przekracza granic .IntPtr

Dotyczy

SubtractByteOffset<T>(T, UIntPtr)

Ważne

Ten interfejs API nie jest zgodny ze specyfikacją CLS.

Odejmuje przesunięcie bajtów od danego zarządzanego wskaźnika.

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

Parametry typu

T

Typ elementalny zarządzanego wskaźnika.

Parametry

source
T

Zarządzany wskaźnik odejmuje przesunięcie od.

byteOffset
UIntPtr

nuint

unativeint

Przesunięcie w celu odejmowania.

Zwraca

T

Nowy zarządzany wskaźnik, który odzwierciedla odejmowanie określonego przesunięcia bajtów ze wskaźnika źródłowego.

Atrybuty

Uwagi

Parametr byteOffset jest liczbą bajtów do odejmowania od source wskaźnika. Na przykład, biorąc pod uwagę wskaźnik źródłowy ptr typu ref int, wywołanie Unsafe.SubtractByteOffset<int>(ref ptr, (nuint)20) zwróci nowy wskaźnik, którego punkty adresowe 20 bajtów przed ptr.

Jeśli byteOffset jest wartością obliczeniową, a nie literałem zakodowanym na stałe, wywołujące powinny rozważyć możliwość przepełnienia liczby całkowitej. Na przykład w wywołaniu Unsafe.SubtractByteOffset<int>(ref ptr, a * b)obiekt wywołujący musi upewnić się, że wartość a * b pośrednia nie przekracza granic .UIntPtr

Dotyczy