Aracılığıyla paylaş


UIntPtr.Add(UIntPtr, Int32) Yöntem

Tanım

İşaretsiz bir tamsayıya uzaklık ekler.

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

Parametreler

pointer
UIntPtr

unativeint

Uzaklık eklenecek işaretsiz tamsayı.

offset
Int32

Eklenecek uzaklık.

Döndürülenler

UIntPtr

unativeint

öğesinin eklenmesini offset pointeryansıtan yeni bir işaretsiz tamsayı.

Örnekler

Aşağıdaki örnek, on öğeli bir dizinin başlangıcına işaret eden bir UIntPtr nesnenin örneğini oluşturur ve ardından dizideki öğeleri yinelemek için yöntemini çağırır Add .

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
open System

let arr = [| 1; 2; 3; 4; 5; 6; 7; 8; 9; 10 |]
let ptr = UIntPtr(uint arr[0])
for i = 0 to arr.Length - 1 do
    let newPtr = UIntPtr.Add(ptr, i)
    printf $"{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

Açıklamalar

Yöntem Add , sonuç yürütme işleminde işaretsiz bir tamsayı olarak temsil edilemeyecek kadar büyükse bir özel durum oluşturmaz. Bunun yerine, ekleme işlemi işaretlenmemiş bir bağlamda gerçekleştirilir.

İşleç aşırı yüklemesini veya özel işleçleri desteklemeyen diller, işaretçinin değerine uzaklık eklemek için bu yöntemi kullanabilir.

Şunlara uygulanır

Ayrıca bkz.