Unsafe.Subtract 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
Subtract<T>(Void*, Int32) |
Belirli bir yönetilmeyen işaretçiden bir öğe uzaklığını çıkarır. |
Subtract<T>(T, Int32) |
Belirli bir yönetilen işaretçiden uzaklığı çıkarır. |
Subtract<T>(T, IntPtr) |
Belirli bir yönetilen işaretçiden bir öğe uzaklığını çıkarır. |
Subtract<T>(T, UIntPtr) |
Belirli bir yönetilen işaretçiden bir öğe uzaklığını çıkarır. |
Subtract<T>(Void*, Int32)
- Kaynak:
- Unsafe.cs
- Kaynak:
- Unsafe.cs
- Kaynak:
- Unsafe.cs
Önemli
Bu API, CLS uyumlu değildir.
Belirli bir yönetilmeyen işaretçiden bir öğe uzaklığını çıkarır.
public:
generic <typename T>
static void* Subtract(void* source, int elementOffset);
public static void* Subtract<T> (void* source, int elementOffset);
[System.CLSCompliant(false)]
public static void* Subtract<T> (void* source, int elementOffset);
static member Subtract : nativeptr<unit> * int -> nativeptr<unit>
[<System.CLSCompliant(false)>]
static member Subtract : 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ığı çıkarmak için yönetilmeyen işaretçi.
- elementOffset
- Int32
Çıkaracak uzaklık.
Döndürülenler
Kaynak işaretçiden belirtilen uzaklık çıkarma işlemini yansıtan yeni bir yönetilmeyen işaretçi.
- Öznitelikler
Açıklamalar
elementOffset
parametresi, işaretçiden source
kaldırılacak boyutlu öğelerin (bayt değil) sayısıdırT
. Örneğin, bir kaynak işaretçi ptr verüldüğünde, çağrı Unsafe.Subtract<int>(ptr, 20)
ptr'den önce adresi 80 bayt (= 20 öğe * öğe başına 4 bayt) gösteren yeni bir işaretçi döndürür.
Sabit kodlanmış sabit değer yerine hesaplanan bir değerse elementOffset
, çağıranlar tamsayı taşma olasılığını dikkate almalıdır. Örneğin, çağrısında Unsafe.Subtract<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
Subtract<T>(T, Int32)
- Kaynak:
- Unsafe.cs
- Kaynak:
- Unsafe.cs
- Kaynak:
- Unsafe.cs
Belirli bir yönetilen işaretçiden uzaklığı çıkarır.
public:
generic <typename T>
static T % Subtract(T % source, int elementOffset);
public static ref T Subtract<T> (ref T source, int elementOffset);
static member Subtract : 'T * int -> 'T
Public Shared Function Subtract(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ığı çıkarmak için yönetilen işaretçi.
- elementOffset
- Int32
Çıkaracak uzaklık.
Döndürülenler
Kaynak işaretçiden belirtilen uzaklık çıkarma işlemini yansıtan yeni bir yönetilen işaretçi.
Açıklamalar
elementOffset
parametresi, işaretçiden source
çıkarılmaya değer T
boyutlu öğelerin (bayt değil) sayısıdır. Örneğin, türünde ref int
bir kaynak işaretçi işaretleyicisi verüldüğünde, çağrı Unsafe.Subtract<int>(ref ptr, 20)
ptr'den önce adresi 80 bayt (= 20 öğe * öğe başına 4 bayt) gösteren yeni bir işaretçi döndürür.
Sabit kodlanmış sabit değer yerine hesaplanan bir değerse elementOffset
, çağıranlar tamsayı taşma olasılığını dikkate almalıdır. Örneğin, çağrısında Unsafe.Subtract<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
Subtract<T>(T, IntPtr)
- Kaynak:
- Unsafe.cs
- Kaynak:
- Unsafe.cs
- Kaynak:
- Unsafe.cs
Belirli bir yönetilen işaretçiden bir öğe uzaklığını çıkarır.
public:
generic <typename T>
static T % Subtract(T % source, IntPtr elementOffset);
public static ref T Subtract<T> (ref T source, IntPtr elementOffset);
static member Subtract : 'T * nativeint -> 'T
Public Shared Function Subtract(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ığı çıkarmak için yönetilen işaretçi.
- elementOffset
-
IntPtr
nativeint
Çıkaracak uzaklık.
Döndürülenler
Kaynak işaretçiden belirtilen uzaklık çıkarma işlemini yansıtan yeni bir yönetilen işaretçi.
Açıklamalar
elementOffset
parametresi, işaretçiden source
çıkarılmaya değer T
boyutlu öğelerin (bayt değil) sayısıdır. Örneğin, türünde ref int
bir kaynak işaretçi işaretleyicisi verüldüğünde, çağrı Unsafe.Subtract<int>(ref ptr, (nint)20)
ptr'den önce adresi 80 bayt (= 20 öğe * öğe başına 4 bayt) gösteren yeni bir işaretçi döndürür.
Sabit kodlanmış sabit değer yerine hesaplanan bir değerse elementOffset
, çağıranlar tamsayı taşma olasılığını dikkate almalıdır. Örneğin, çağrısında Unsafe.Subtract<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
Subtract<T>(T, UIntPtr)
- Kaynak:
- Unsafe.cs
- Kaynak:
- Unsafe.cs
- Kaynak:
- Unsafe.cs
Önemli
Bu API, CLS uyumlu değildir.
Belirli bir yönetilen işaretçiden bir öğe uzaklığını çıkarır.
public:
generic <typename T>
static T % Subtract(T % source, UIntPtr elementOffset);
public static ref T Subtract<T> (ref T source, nuint elementOffset);
[System.CLSCompliant(false)]
public static ref T Subtract<T> (ref T source, UIntPtr elementOffset);
static member Subtract : 'T * unativeint -> 'T
[<System.CLSCompliant(false)>]
static member Subtract : 'T * unativeint -> 'T
Public Shared Function Subtract(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ığı çıkarmak için yönetilen işaretçi.
- elementOffset
-
UIntPtr
nuint
unativeint
Çıkaracak uzaklık.
Döndürülenler
Kaynak işaretçiden belirtilen uzaklık çıkarma işlemini yansıtan yeni bir yönetilen işaretçi.
- Öznitelikler
Açıklamalar
elementOffset
parametresi, işaretçiden source
çıkarılmaya değer T
boyutlu öğelerin (bayt değil) sayısıdır. Örneğin, türünde ref int
bir kaynak işaretçi işaretleyicisi verüldüğünde, çağrı Unsafe.Subtract<int>(ref ptr, (nuint)20)
ptr'den önce adresi 80 bayt (= 20 öğe * öğe başına 4 bayt) gösteren yeni bir işaretçi döndürür.
Sabit kodlanmış sabit değer yerine hesaplanan bir değerse elementOffset
, çağıranlar tamsayı taşma olasılığını dikkate almalıdır. Örneğin, çağrısında Unsafe.Subtract<int>(ref ptr, a * b)
çağıranın ara değerin a * b
sınırlarını UIntPtr
aşmadığından emin olması gerekir.