Unsafe.Add Metoda

Definice

Přetížení

Add<T>(Void*, Int32)

Přidá posun prvku k danému nespravovanému ukazateli.

Add<T>(T, Int32)

Přidá posun k danému spravovanému ukazateli.

Add<T>(T, IntPtr)

Přidá posun prvku k danému spravovanému ukazateli.

Add<T>(T, UIntPtr)

Přidá posun prvku k danému spravovanému ukazateli.

Add<T>(Void*, Int32)

Důležité

Toto rozhraní API neodpovídá specifikaci CLS.

Přidá posun prvku k danému nespravovanému ukazateli.

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

Parametry typu

T

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

Parametry

source
Void*

Nespravovaný ukazatel pro přidání posunu.

elementOffset
Int32

Posun, který se má přidat.

Návraty

Void*

Nový nespravovaný ukazatel, který odráží přidání zadaného posunu ke zdrojovému ukazateli.

Atributy

Poznámky

Parametr elementOffset je počet Tprvků -size (nikoli bajtů), které se mají přidat k ukazateli source . Volání vrátí například nový ukazatel,Unsafe.Add<int>(ptr, 20) jehož adresa odkazuje na 80 bajtů (= 20 prvků * 4 bajty na prvek) nad rámec ptr.

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

Platí pro

Add<T>(T, Int32)

Přidá posun k danému spravovanému ukazateli.

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

Parametry typu

T

Typ prvku spravovaného ukazatele.

Parametry

source
T

Spravovaný ukazatel pro přidání posunu do.

elementOffset
Int32

Posun, který se má přidat.

Návraty

T

Nový spravovaný ukazatel, který odráží přidání zadaného posunu ke zdrojovému ukazateli.

Poznámky

Parametr elementOffset je počet Tprvků -size (nikoli bajtů), které se mají přidat k ukazateli source . Například při zadání zdroje ukazatele ptr typu ref intvrátí volání Unsafe.Add<int>(ref ptr, 20) nový ukazatel, jehož adresa odkazuje na 80 bajtů (= 20 prvků * 4 bajty na prvek) za ptr.

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

Platí pro

Add<T>(T, IntPtr)

Přidá posun prvku k danému spravovanému ukazateli.

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

Parametry typu

T

Typ prvku spravovaného ukazatele.

Parametry

source
T

Spravovaný ukazatel pro přidání posunu do.

elementOffset
IntPtr

nativeint

Posun, který se má přidat.

Návraty

T

Nový spravovaný ukazatel, který odráží přidání zadaného posunu ke zdrojovému ukazateli.

Poznámky

Parametr elementOffset je počet Tprvků -size (nikoli bajtů), které se mají přidat k ukazateli source . Například při zadání zdroje ukazatele ptr typu ref intvrátí volání Unsafe.Add<int>(ref ptr, (nint)20) nový ukazatel, jehož adresa odkazuje na 80 bajtů (= 20 prvků * 4 bajty na prvek) za ptr.

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

Platí pro

Add<T>(T, UIntPtr)

Důležité

Toto rozhraní API neodpovídá specifikaci CLS.

Přidá posun prvku k danému spravovanému ukazateli.

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

Parametry typu

T

Typ prvku spravovaného ukazatele.

Parametry

source
T

Spravovaný ukazatel pro přidání posunu do.

elementOffset
UIntPtr

nuint

unativeint

Posun, který se má přidat.

Návraty

T

Nový spravovaný ukazatel, který odráží přidání zadaného posunu ke zdrojovému ukazateli.

Atributy

Poznámky

Parametr elementOffset je počet Tprvků -size (nikoli bajtů), které se mají přidat k ukazateli source . Například při zadání zdroje ukazatele ptr typu ref intvrátí volání Unsafe.Add<int>(ref ptr, (nuint)20) nový ukazatel, jehož adresa odkazuje na 80 bajtů (= 20 prvků * 4 bajty na prvek) za ptr.

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

Platí pro