UIntPtr.Add(UIntPtr, Int32) Methode

Definition

Addiert einen Offset zum Wert eines Zeigers ohne Vorzeichen.Adds an offset to the value of an unsigned pointer.

public:
 static UIntPtr Add(UIntPtr pointer, int offset);
public static UIntPtr Add (UIntPtr pointer, int offset);
static member Add : unativeint * int -> unativeint
Public Shared Function Add (pointer As UIntPtr, offset As Integer) As UIntPtr

Parameter

pointer
UIntPtr

Der Zeiger ohne Vorzeichen, zu dem der Offset addiert werden soll.The unsigned pointer to add the offset to.

offset
Int32

Der Offset, der addiert werden soll.The offset to add.

Gibt zurück

Ein neuer Zeiger ohne Vorzeichen, der die Addition von offset zu pointer widerspiegelt.A new unsigned pointer that reflects the addition of offset to pointer.

Beispiele

Im folgenden Beispiel wird ein UIntPtr -Objekt instanziiert, das auf den Anfang eines Arrays mit zehn Elementen zeigt. Anschließend wird die Add -Methode aufgerufen, um die Elemente im Array zu durchlaufen.The following example instantiates a UIntPtr object that points to the beginning of a ten-element array, and then calls the Add method to iterate the elements in the array.

using System;

public class Example
{
   public static void Main()
   {
      int[] arr = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 };
      UIntPtr ptr = (UIntPtr) arr[0];
      for (int ctr = 0; ctr < arr.Length; ctr++)
      {
         UIntPtr newPtr = UIntPtr.Add(ptr, ctr);
         Console.Write("{0}   ", newPtr);
      }      
   }
}
// The example displays the following output:
//       1   2   3   4   5   6   7   8   9   10
Module Example
   Public Sub Main()
      Dim arr() As Integer = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 }
      Dim ptr As UIntPtr = CType(arr(0), UIntPtr)
      For ctr As Integer= 0 To arr.Length - 1
         Dim newPtr As UIntPtr = UIntPtr.Add(ptr, ctr)
         Console.Write("{0}   ", newPtr)
      Next
   End Sub
End Module
' The example displays the following output:
'       1   2   3   4   5   6   7   8   9   10

Hinweise

Die Add -Methode löst keine Ausnahme aus, wenn das Ergebnis zu groß ist, um als Zeiger auf der angegebenen Plattform dargestellt zu werden.The Add method does not throw an exception if the result is too large to represent as a pointer on the specified platform. Stattdessen wird die Additions Operation in einem nicht überprüften Kontext ausgeführt.Instead, the addition operation is performed in an unchecked context.

Sprachen, die das Überladen von Operatoren oder benutzerdefinierte Operatoren nicht unterstützen, können diese Methode verwenden, um dem Wert eines Zeigers ohne Vorzeichen einen Offset hinzuzufügen.Languages that do not support operator overloading or custom operators can use this method to add an offset to the value of an unsigned pointer.

Gilt für:

Siehe auch