Definición

Suma un desplazamiento al valor de un puntero.Adds an offset to the value of a pointer.

``````public:
static IntPtr operator +(IntPtr pointer, int offset);``````
``public static IntPtr operator + (IntPtr pointer, int offset);``
``static member ( + ) : nativeint * int -> nativeint``
``Public Shared Operator + (pointer As IntPtr, offset As Integer) As IntPtr``

Parámetros

pointer
IntPtr

Puntero al que se va a sumar el desplazamiento.The pointer to add the offset to.

offset
Int32

Desplazamiento que se va a sumar.The offset to add.

Devoluciones

IntPtr

Nuevo puntero que es el resultado de sumar `offset` a `pointer`.A new pointer that reflects the addition of `offset` to `pointer`.

Comentarios

El Addition método define la operación de suma de los IntPtr objetos.The Addition method defines the addition operation for IntPtr objects. Permite el código como el siguiente.It enables code such as the following.

``````int[] arr = {2, 4, 6, 8, 10, 12, 14, 16, 18, 20 };
unsafe {
fixed(int* parr = arr)
{
IntPtr ptr = new IntPtr(parr);
for (int ctr = 0; ctr < arr.Length; ctr++)
{
IntPtr newPtr = ptr + ctr * sizeof(Int32);
}
}
}
// The example displays the following output:
//       2   4   6   8   10   12   14   16   18   20
``````
``````Dim arr() As Integer = {2, 4, 6, 8, 10, 12, 14, 16, 18, 20 }
Dim ptr As IntPtr = Marshal.UnsafeAddrOfPinnedArrayElement(arr, 0)
For ctr As Integer = 0 To arr.Length - 1
Dim newPtr As IntPtr = ptr + ctr * Len(arr(0))
Next
' The example displays the following output:
'       2   4   6   8   10   12   14   16   18   20
``````