Unsafe.SubtractByteOffset Metoda
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.
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