Unsafe.Add Metodo

Definizione

Overload

Add<T>(Void*, Int32)

Aggiunge un offset di elemento al puntatore non gestito specificato.

Add<T>(T, Int32)

Aggiunge un offset al puntatore gestito specificato.

Add<T>(T, IntPtr)

Aggiunge un offset di elemento al puntatore gestito specificato.

Add<T>(T, UIntPtr)

Aggiunge un offset di elemento al puntatore gestito specificato.

Add<T>(Void*, Int32)

Origine:
Unsafe.cs
Origine:
Unsafe.cs
Origine:
Unsafe.cs

Importante

Questa API non è conforme a CLS.

Aggiunge un offset di elemento al puntatore non gestito specificato.

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>

Parametri di tipo

T

Tipo la cui dimensione verrà usata come fattore di scala per elementOffset.

Parametri

source
Void*

Puntatore non gestito a cui aggiungere l'offset.

elementOffset
Int32

Offset da aggiungere.

Restituisce

Void*

Nuovo puntatore non gestito che riflette l'aggiunta dell'offset specificato al puntatore di origine.

Attributi

Commenti

Il elementOffset parametro è il numero di elementi di Tdimensioni (non byte) da aggiungere al source puntatore. Ad esempio, dato un puntatore di origine ptr, la chiamata Unsafe.Add<int>(ptr, 20) restituirà un nuovo puntatore i cui punti di indirizzo 80 byte (= 20 elementi * 4 byte per elemento) oltre ptr.

Se elementOffset è un valore calcolato anziché un valore letterale hardcoded, i chiamanti devono considerare la possibilità di overflow intero. Ad esempio, nella chiamata Unsafe.Add<int>(ptr, a * b), il chiamante deve assicurarsi che il valore a * b intermedio non sovraflow i limiti di Int32.

Si applica a

Add<T>(T, Int32)

Origine:
Unsafe.cs
Origine:
Unsafe.cs
Origine:
Unsafe.cs

Aggiunge un offset al puntatore gestito specificato.

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

Parametri di tipo

T

Tipo di elemento del puntatore gestito.

Parametri

source
T

Puntatore gestito a cui aggiungere l'offset.

elementOffset
Int32

Offset da aggiungere.

Restituisce

T

Nuovo puntatore gestito che riflette l'aggiunta dell'offset specificato al puntatore di origine.

Commenti

Il elementOffset parametro è il numero di elementi di Tdimensioni (non byte) da aggiungere al source puntatore. Ad esempio, dato un puntatore di origine ptr di tipo ref int, la chiamata Unsafe.Add<int>(ref ptr, 20) restituirà un nuovo puntatore i cui punti di indirizzo 80 byte (= 20 elementi * 4 byte per elemento) oltre ptr.

Se elementOffset è un valore calcolato anziché un valore letterale hardcoded, i chiamanti devono considerare la possibilità di overflow intero. Ad esempio, nella chiamata Unsafe.Add<int>(ref ptr, a * b), il chiamante deve assicurarsi che il valore a * b intermedio non sovraflow i limiti di Int32.

Si applica a

Add<T>(T, IntPtr)

Origine:
Unsafe.cs
Origine:
Unsafe.cs
Origine:
Unsafe.cs

Aggiunge un offset di elemento al puntatore gestito specificato.

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

Parametri di tipo

T

Tipo di elemento del puntatore gestito.

Parametri

source
T

Puntatore gestito a cui aggiungere l'offset.

elementOffset
IntPtr

nativeint

Offset da aggiungere.

Restituisce

T

Nuovo puntatore gestito che riflette l'aggiunta dell'offset specificato al puntatore di origine.

Commenti

Il elementOffset parametro è il numero di elementi di Tdimensioni (non byte) da aggiungere al source puntatore. Ad esempio, dato un puntatore di origine ptr di tipo ref int, la chiamata Unsafe.Add<int>(ref ptr, (nint)20) restituirà un nuovo puntatore i cui punti di indirizzo 80 byte (= 20 elementi * 4 byte per elemento) oltre ptr.

Se elementOffset è un valore calcolato anziché un valore letterale hardcoded, i chiamanti devono considerare la possibilità di overflow intero. Ad esempio, nella chiamata Unsafe.Add<int>(ref ptr, a * b), il chiamante deve assicurarsi che il valore a * b intermedio non sovraflow i limiti di IntPtr.

Si applica a

Add<T>(T, UIntPtr)

Origine:
Unsafe.cs
Origine:
Unsafe.cs
Origine:
Unsafe.cs

Importante

Questa API non è conforme a CLS.

Aggiunge un offset di elemento al puntatore gestito specificato.

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

Parametri di tipo

T

Tipo di elemento del puntatore gestito.

Parametri

source
T

Puntatore gestito a cui aggiungere l'offset.

elementOffset
UIntPtr

nuint

unativeint

Offset da aggiungere.

Restituisce

T

Nuovo puntatore gestito che riflette l'aggiunta dell'offset specificato al puntatore di origine.

Attributi

Commenti

Il elementOffset parametro è il numero di elementi di Tdimensioni (non byte) da aggiungere al source puntatore. Ad esempio, dato un puntatore di origine ptr di tipo ref int, la chiamata Unsafe.Add<int>(ref ptr, (nuint)20) restituirà un nuovo puntatore i cui punti di indirizzo 80 byte (= 20 elementi * 4 byte per elemento) oltre ptr.

Se elementOffset è un valore calcolato anziché un valore letterale hardcoded, i chiamanti devono considerare la possibilità di overflow intero. Ad esempio, nella chiamata Unsafe.Add<int>(ref ptr, a * b), il chiamante deve assicurarsi che il valore a * b intermedio non sovraflow i limiti di UIntPtr.

Si applica a