Unsafe.Add Yöntem
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
Aşırı Yüklemeler
Add<T>(Void*, Int32) |
Verilen yönetilmeyen işaretçiye bir öğe uzaklığı ekler. |
Add<T>(T, Int32) |
Verilen yönetilen işaretçiye bir uzaklık ekler. |
Add<T>(T, IntPtr) |
Verilen yönetilen işaretçiye bir öğe uzaklığı ekler. |
Add<T>(T, UIntPtr) |
Verilen yönetilen işaretçiye bir öğe uzaklığı ekler. |
Add<T>(Void*, Int32)
- Kaynak:
- Unsafe.cs
- Kaynak:
- Unsafe.cs
- Kaynak:
- Unsafe.cs
Önemli
Bu API, CLS uyumlu değildir.
Verilen yönetilmeyen işaretçiye bir öğe uzaklığı ekler.
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>
Tür Parametreleri
- T
boyutu için elementOffset
ölçek faktörü olarak kullanılacak tür.
Parametreler
- source
- Void*
Uzaklığı eklemek için yönetilmeyen işaretçi.
- elementOffset
- Int32
Eklenecek uzaklık.
Döndürülenler
Belirtilen uzaklığı kaynak işaretçiye eklemeyi yansıtan yeni bir yönetilmeyen işaretçi.
- Öznitelikler
Açıklamalar
elementOffset
parametresi, işaretçiye eklenecek source
boyutlu öğelerin (bayt değil) sayısıdırT
. Örneğin, bir kaynak işaretçi ptr verüldüğünde çağrı Unsafe.Add<int>(ptr, 20)
, ptr'nin ötesinde adres noktası 80 bayt (= 20 öğe * öğe başına 4 bayt) olan yeni bir işaretçi döndürür.
Sabit kodlanmış değişmez değer yerine hesaplanan bir değerse elementOffset
, çağıranlar tamsayı taşması olasılığını dikkate almalıdır. Örneğin çağrısında Unsafe.Add<int>(ptr, a * b)
, çağıranın ara değerin a * b
sınırlarını Int32
aşmadığından emin olması gerekir.
Şunlara uygulanır
Add<T>(T, Int32)
- Kaynak:
- Unsafe.cs
- Kaynak:
- Unsafe.cs
- Kaynak:
- Unsafe.cs
Verilen yönetilen işaretçiye bir uzaklık ekler.
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
Tür Parametreleri
- T
Yönetilen işaretçinin öğe türü.
Parametreler
- source
- T
Uzaklığı eklemek için yönetilen işaretçi.
- elementOffset
- Int32
Eklenecek uzaklık.
Döndürülenler
Belirtilen uzaklık değerinin kaynak işaretçiye eklenmesini yansıtan yeni bir yönetilen işaretçi.
Açıklamalar
elementOffset
parametresi, işaretçiye eklenecek source
boyutlu öğelerin (bayt değil) sayısıdırT
. Örneğin, türünde ref int
bir kaynak işaretçi ptr'si verüldüğünde, çağrı Unsafe.Add<int>(ref ptr, 20)
adresi ptr'nin ötesinde 80 bayt (= 20 öğe * öğe başına 4 bayt) gösteren yeni bir işaretçi döndürür.
Sabit kodlanmış değişmez değer yerine hesaplanan bir değerse elementOffset
, çağıranlar tamsayı taşması olasılığını dikkate almalıdır. Örneğin çağrısında Unsafe.Add<int>(ref ptr, a * b)
, çağıranın ara değerin a * b
sınırlarını Int32
aşmadığından emin olması gerekir.
Şunlara uygulanır
Add<T>(T, IntPtr)
- Kaynak:
- Unsafe.cs
- Kaynak:
- Unsafe.cs
- Kaynak:
- Unsafe.cs
Verilen yönetilen işaretçiye bir öğe uzaklığı ekler.
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
Tür Parametreleri
- T
Yönetilen işaretçinin öğe türü.
Parametreler
- source
- T
Uzaklığı eklemek için yönetilen işaretçi.
- elementOffset
-
IntPtr
nativeint
Eklenecek uzaklık.
Döndürülenler
Belirtilen uzaklık değerinin kaynak işaretçiye eklenmesini yansıtan yeni bir yönetilen işaretçi.
Açıklamalar
elementOffset
parametresi, işaretçiye eklenecek source
boyutlu öğelerin (bayt değil) sayısıdırT
. Örneğin, türünde ref int
bir kaynak işaretçi ptr'si verüldüğünde, çağrı Unsafe.Add<int>(ref ptr, (nint)20)
adresi ptr'nin ötesinde 80 bayt (= 20 öğe * öğe başına 4 bayt) gösteren yeni bir işaretçi döndürür.
Sabit kodlanmış değişmez değer yerine hesaplanan bir değerse elementOffset
, çağıranlar tamsayı taşması olasılığını dikkate almalıdır. Örneğin çağrısında Unsafe.Add<int>(ref ptr, a * b)
, çağıranın ara değerin a * b
sınırlarını IntPtr
aşmadığından emin olması gerekir.
Şunlara uygulanır
Add<T>(T, UIntPtr)
- Kaynak:
- Unsafe.cs
- Kaynak:
- Unsafe.cs
- Kaynak:
- Unsafe.cs
Önemli
Bu API, CLS uyumlu değildir.
Verilen yönetilen işaretçiye bir öğe uzaklığı ekler.
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
Tür Parametreleri
- T
Yönetilen işaretçinin öğe türü.
Parametreler
- source
- T
Uzaklığı eklemek için yönetilen işaretçi.
- elementOffset
-
UIntPtr
nuint
unativeint
Eklenecek uzaklık.
Döndürülenler
Belirtilen uzaklık değerinin kaynak işaretçiye eklenmesini yansıtan yeni bir yönetilen işaretçi.
- Öznitelikler
Açıklamalar
elementOffset
parametresi, işaretçiye eklenecek source
boyutlu öğelerin (bayt değil) sayısıdırT
. Örneğin, türünde ref int
bir kaynak işaretçi ptr'si verüldüğünde, çağrı Unsafe.Add<int>(ref ptr, (nuint)20)
adresi ptr'nin ötesinde 80 bayt (= 20 öğe * öğe başına 4 bayt) gösteren yeni bir işaretçi döndürür.
Sabit kodlanmış değişmez değer yerine hesaplanan bir değerse elementOffset
, çağıranlar tamsayı taşması olasılığını dikkate almalıdır. Örneğin çağrısında Unsafe.Add<int>(ref ptr, a * b)
, çağıranın ara değerin a * b
sınırlarını UIntPtr
aşmadığından emin olması gerekir.
Şunlara uygulanır
Geri Bildirim
https://aka.ms/ContentUserFeedback.
Çok yakında: 2024 boyunca, içerik için geri bildirim mekanizması olarak GitHub Sorunları’nı kullanımdan kaldıracak ve yeni bir geri bildirim sistemiyle değiştireceğiz. Daha fazla bilgi için bkz.Gönderin ve geri bildirimi görüntüleyin