Udostępnij za pośrednictwem


Unsafe.Add Metoda

Definicja

Przeciążenia

Add<T>(Void*, Int32)

Dodaje przesunięcie elementu do danego niezarządzanego wskaźnika.

Add<T>(T, Int32)

Dodaje przesunięcie do danego zarządzanego wskaźnika.

Add<T>(T, IntPtr)

Dodaje przesunięcie elementu do danego zarządzanego wskaźnika.

Add<T>(T, UIntPtr)

Dodaje przesunięcie elementu do danego zarządzanego wskaźnika.

Add<T>(Void*, Int32)

Źródło:
Unsafe.cs
Źródło:
Unsafe.cs
Źródło:
Unsafe.cs

Ważne

Ten interfejs API nie jest zgodny ze specyfikacją CLS.

Dodaje przesunięcie elementu do danego niezarządzanego wskaźnika.

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, którego rozmiar będzie używany jako współczynnik skalowania dla elementu elementOffset.

Parametry

source
Void*

Wskaźnik niezarządzany w celu dodania przesunięcia do.

elementOffset
Int32

Przesunięcie do dodania.

Zwraca

Void*

Nowy niezarządzany wskaźnik, który odzwierciedla dodanie określonego przesunięcia do wskaźnika źródłowego.

Atrybuty

Uwagi

Parametr elementOffset jest liczbą Telementów o rozmiarze (a nie bajtach), które mają zostać dodane do source wskaźnika. Na przykład, biorąc pod uwagę wskaźnik źródłowy ptr, wywołanie Unsafe.Add<int>(ptr, 20) zwróci nowy wskaźnik, którego punkty adresowe 80 bajtów (= 20 elementów * 4 bajty na element) poza ptr.

Jeśli elementOffset 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.Add<int>(ptr, a * b)obiekt wywołujący musi upewnić się, że wartość a * b pośrednia nie przekracza granic .Int32

Dotyczy

Add<T>(T, Int32)

Źródło:
Unsafe.cs
Źródło:
Unsafe.cs
Źródło:
Unsafe.cs

Dodaje przesunięcie do danego zarządzanego wskaźnika.

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 elementalny zarządzanego wskaźnika.

Parametry

source
T

Zarządzany wskaźnik do dodania przesunięcia.

elementOffset
Int32

Przesunięcie do dodania.

Zwraca

T

Nowy zarządzany wskaźnik, który odzwierciedla dodanie określonego przesunięcia do wskaźnika źródłowego.

Uwagi

Parametr elementOffset jest liczbą Telementów o rozmiarze (a nie bajtach), które mają zostać dodane do source wskaźnika. Na przykład, biorąc pod uwagę wskaźnik źródłowy typu ref int, wywołanie Unsafe.Add<int>(ref ptr, 20) zwróci nowy wskaźnik, którego punkty adresowe 80 bajtów (= 20 elementów * 4 bajty na element) poza ptr.

Jeśli elementOffset 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.Add<int>(ref ptr, a * b)obiekt wywołujący musi upewnić się, że wartość a * b pośrednia nie przekracza granic .Int32

Dotyczy

Add<T>(T, IntPtr)

Źródło:
Unsafe.cs
Źródło:
Unsafe.cs
Źródło:
Unsafe.cs

Dodaje przesunięcie elementu do danego zarządzanego wskaźnika.

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 elementalny zarządzanego wskaźnika.

Parametry

source
T

Zarządzany wskaźnik do dodania przesunięcia.

elementOffset
IntPtr

nativeint

Przesunięcie do dodania.

Zwraca

T

Nowy zarządzany wskaźnik, który odzwierciedla dodanie określonego przesunięcia do wskaźnika źródłowego.

Uwagi

Parametr elementOffset jest liczbą Telementów o rozmiarze (a nie bajtach), które mają zostać dodane do source wskaźnika. Na przykład, biorąc pod uwagę wskaźnik źródłowy typu ref int, wywołanie Unsafe.Add<int>(ref ptr, (nint)20) zwróci nowy wskaźnik, którego punkty adresowe 80 bajtów (= 20 elementów * 4 bajty na element) poza ptr.

Jeśli elementOffset 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.Add<int>(ref ptr, a * b)obiekt wywołujący musi upewnić się, że wartość a * b pośrednia nie przekracza granic .IntPtr

Dotyczy

Add<T>(T, UIntPtr)

Źródło:
Unsafe.cs
Źródło:
Unsafe.cs
Źródło:
Unsafe.cs

Ważne

Ten interfejs API nie jest zgodny ze specyfikacją CLS.

Dodaje przesunięcie elementu do danego zarządzanego wskaźnika.

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 elementalny zarządzanego wskaźnika.

Parametry

source
T

Zarządzany wskaźnik do dodania przesunięcia.

elementOffset
UIntPtr

nuint

unativeint

Przesunięcie do dodania.

Zwraca

T

Nowy zarządzany wskaźnik, który odzwierciedla dodanie określonego przesunięcia do wskaźnika źródłowego.

Atrybuty

Uwagi

Parametr elementOffset jest liczbą Telementów o rozmiarze (a nie bajtach), które mają zostać dodane do source wskaźnika. Na przykład, biorąc pod uwagę wskaźnik źródłowy typu ref int, wywołanie Unsafe.Add<int>(ref ptr, (nuint)20) zwróci nowy wskaźnik, którego punkty adresowe 80 bajtów (= 20 elementów * 4 bajty na element) poza ptr.

Jeśli elementOffset 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.Add<int>(ref ptr, a * b)obiekt wywołujący musi upewnić się, że wartość a * b pośrednia nie przekracza granic .UIntPtr

Dotyczy