Freigeben über


Unsafe.AddByteOffset Methode

Definition

Überlädt

AddByteOffset<T>(T, IntPtr)

Fügt dem angegebenen verwalteten Zeiger einen Byteoffset hinzu.

AddByteOffset<T>(T, UIntPtr)

Fügt dem angegebenen verwalteten Zeiger einen Byteoffset hinzu.

AddByteOffset<T>(T, IntPtr)

Quelle:
Unsafe.cs
Quelle:
Unsafe.cs
Quelle:
Unsafe.cs

Fügt dem angegebenen verwalteten Zeiger einen Byteoffset hinzu.

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

Typparameter

T

Der Elementtyp des verwalteten Zeigers.

Parameter

source
T

Der verwaltete Zeiger, dem der Offset hinzugefügt werden soll.

byteOffset
IntPtr

nativeint

Der Offset, der addiert werden soll.

Gibt zurück

T

Ein neuer verwalteter Zeiger, der das Hinzufügen des angegebenen Byteoffsets zum Quellzeiger widerspiegelt.

Hinweise

Der byteOffset Parameter ist die Anzahl der Bytes, die dem source Zeiger hinzugefügt werden sollen. Bei einem Quellzeiger ptr vom Typ ref intgibt der Aufruf Unsafe.AddByteOffset<int>(ref ptr, 20) beispielsweise einen neuen Zeiger zurück, dessen Adresse 20 Byte über ptr hinaus zeigt.

Wenn byteOffset ein berechneter Wert anstelle eines hartcodierten Literals ist, sollten Aufrufer die Möglichkeit eines Ganzzahlüberlaufs in Betracht ziehen. Im Aufruf Unsafe.AddByteOffset<int>(ref ptr, a * b)muss der Aufrufer beispielsweise sicherstellen, dass der Zwischenwert a * b nicht die Grenzen von IntPtrüberläuft.

Gilt für:

AddByteOffset<T>(T, UIntPtr)

Quelle:
Unsafe.cs
Quelle:
Unsafe.cs
Quelle:
Unsafe.cs

Wichtig

Diese API ist nicht CLS-kompatibel.

Fügt dem angegebenen verwalteten Zeiger einen Byteoffset hinzu.

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

Typparameter

T

Der Elementtyp des verwalteten Zeigers.

Parameter

source
T

Der verwaltete Zeiger, dem der Offset hinzugefügt werden soll.

byteOffset
UIntPtr

nuint

unativeint

Der Offset, der addiert werden soll.

Gibt zurück

T

Ein neuer verwalteter Zeiger, der das Hinzufügen des angegebenen Byteoffsets zum Quellzeiger widerspiegelt.

Attribute

Hinweise

Der byteOffset Parameter ist die Anzahl der Bytes, die dem source Zeiger hinzugefügt werden sollen. Bei einem Quellzeiger ptr vom Typ ref intgibt der Aufruf Unsafe.AddByteOffset<int>(ref ptr, (nuint)20) beispielsweise einen neuen Zeiger zurück, dessen Adresse 20 Byte über ptr hinaus zeigt.

Wenn byteOffset ein berechneter Wert anstelle eines hartcodierten Literals ist, sollten Aufrufer die Möglichkeit eines Ganzzahlüberlaufs in Betracht ziehen. Im Aufruf Unsafe.AddByteOffset<int>(ref ptr, a * b)muss der Aufrufer beispielsweise sicherstellen, dass der Zwischenwert a * b nicht die Grenzen von UIntPtrüberläuft.

Gilt für: