Unsafe.SubtractByteOffset Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Überlädt
| Name | Beschreibung |
|---|---|
| SubtractByteOffset<T>(T, IntPtr) |
Subtrahiert einen Byte-Offset vom angegebenen verwalteten Zeiger. |
| SubtractByteOffset<T>(T, UIntPtr) |
Subtrahiert einen Byte-Offset vom angegebenen verwalteten Zeiger. |
SubtractByteOffset<T>(T, IntPtr)
- Quelle:
- Unsafe.cs
- Quelle:
- Unsafe.cs
- Quelle:
- Unsafe.cs
- Quelle:
- Unsafe.cs
- Quelle:
- Unsafe.cs
Subtrahiert einen Byte-Offset vom angegebenen verwalteten Zeiger.
public:
generic <typename T>
static T % SubtractByteOffset(T % source, IntPtr byteOffset);
public static ref T SubtractByteOffset<T>(ref T source, IntPtr byteOffset) where T : allows ref struct;
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
Typparameter
- T
Der Elementtyp des verwalteten Zeigers.
Parameter
- source
- T
Der verwaltete Zeiger, von dem der Offset subtrahiert werden soll.
- byteOffset
-
IntPtr
nativeint
Der Offset, der subtrahiert werden soll.
Gibt zurück
Ein neuer verwalteter Zeiger, der die Subtraktion des angegebenen Byte-Offsets vom Quellzeiger widerspiegelt.
Hinweise
Der byteOffset Parameter ist die Anzahl der Bytes, die aus dem source Zeiger entfernt werden sollen. Wenn beispielsweise ein Quellzeiger ptr vom Typ ref intist, gibt der Aufruf Unsafe.SubtractByteOffset<int>(ref ptr, 20) einen neuen Zeiger zurück, dessen Adresspunkte 20 Byte vor ptr liegen.
Wenn byteOffset es sich um einen berechneten Wert und nicht um ein hartcodiertes Literal handelt, sollten Aufrufer die Möglichkeit eines ganzzahligen Überlaufs berücksichtigen. Im Aufruf Unsafe.SubtractByteOffset<int>(ref ptr, a * b)muss der Aufrufer beispielsweise sicherstellen, dass der Zwischenwert a * b nicht die Grenzen überläuft IntPtr.
Gilt für:
SubtractByteOffset<T>(T, UIntPtr)
- Quelle:
- Unsafe.cs
- Quelle:
- Unsafe.cs
- Quelle:
- Unsafe.cs
- Quelle:
- Unsafe.cs
- Quelle:
- Unsafe.cs
Wichtig
Diese API ist nicht CLS-kompatibel.
Subtrahiert einen Byte-Offset vom angegebenen verwalteten Zeiger.
public:
generic <typename T>
static T % SubtractByteOffset(T % source, UIntPtr byteOffset);
[System.CLSCompliant(false)]
public static ref T SubtractByteOffset<T>(ref T source, UIntPtr byteOffset) where T : allows ref struct;
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);
[<System.CLSCompliant(false)>]
static member SubtractByteOffset : 'T * unativeint -> 'T
static member SubtractByteOffset : 'T * unativeint -> 'T
Public Shared Function SubtractByteOffset(Of T) (ByRef source As T, byteOffset As UIntPtr) As T
Typparameter
- T
Der Elementtyp des verwalteten Zeigers.
Parameter
- source
- T
Der verwaltete Zeiger, von dem der Offset subtrahiert werden soll.
- byteOffset
-
UIntPtr
nuint
unativeint
Der Offset, der subtrahiert werden soll.
Gibt zurück
Ein neuer verwalteter Zeiger, der die Subtraktion des angegebenen Byte-Offsets vom Quellzeiger widerspiegelt.
- Attribute
Hinweise
Der byteOffset Parameter ist die Anzahl der Bytes, die vom source Zeiger subtrahiert werden sollen. Wenn beispielsweise ein Quellzeiger ptr vom Typ ref intist, gibt der Aufruf Unsafe.SubtractByteOffset<int>(ref ptr, (nuint)20) einen neuen Zeiger zurück, dessen Adresspunkte 20 Byte vor ptr liegen.
Wenn byteOffset es sich um einen berechneten Wert und nicht um ein hartcodiertes Literal handelt, sollten Aufrufer die Möglichkeit eines ganzzahligen Überlaufs berücksichtigen. Im Aufruf Unsafe.SubtractByteOffset<int>(ref ptr, a * b)muss der Aufrufer beispielsweise sicherstellen, dass der Zwischenwert a * b nicht die Grenzen überläuft UIntPtr.