Unsafe.Add Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
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 T
prvků -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 T
prvků -size (nikoli bajtů), které se mají přidat k ukazateli source
. Například při zadání zdroje ukazatele ptr typu ref int
vrá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 T
prvků -size (nikoli bajtů), které se mají přidat k ukazateli source
. Například při zadání zdroje ukazatele ptr typu ref int
vrá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 T
prvků -size (nikoli bajtů), které se mají přidat k ukazateli source
. Například při zadání zdroje ukazatele ptr typu ref int
vrá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
.