Unsafe.SubtractByteOffset 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
| Name | Description |
|---|---|
| SubtractByteOffset<T>(T, IntPtr) |
Verilen yönetilen işaretçiden bayt uzaklığını çıkarır. |
| SubtractByteOffset<T>(T, UIntPtr) |
Verilen yönetilen işaretçiden bayt uzaklığını çıkarır. |
SubtractByteOffset<T>(T, IntPtr)
- Kaynak:
- Unsafe.cs
- Kaynak:
- Unsafe.cs
- Kaynak:
- Unsafe.cs
- Kaynak:
- Unsafe.cs
Verilen yönetilen işaretçiden bayt uzaklığını çıkarır.
public:
generic <typename T>
static T % SubtractByteOffset(T % source, IntPtr byteOffset);
public static ref T SubtractByteOffset<T>(ref T source, IntPtr byteOffset) where T : allows ref struct;
public static ref T SubtractByteOffset<T>(ref T source, IntPtr byteOffset);
static member SubtractByteOffset : 'T * nativeint -> 'T
Public Shared Function SubtractByteOffset(Of T) (ByRef source As T, byteOffset 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.
- byteOffset
-
IntPtr
nativeint
Çıkaracak uzaklık.
Döndürülenler
Kaynak işaretçiden belirtilen bayt uzaklığının çıkarıldığını yansıtan yeni bir yönetilen işaretçi.
Açıklamalar
byteOffset parametresi, işaretçiden source kaldırılacak bayt sayısıdır. Örneğin, türünde ref intbir kaynak işaretçi işaretleyicisi verüldüğünde, çağrıUnsafe.SubtractByteOffset<int>(ref ptr, 20), adresi ptr'den önce 20 bayta işaret eden yeni bir işaretçi döndürür.
Sabit kodlanmış sabit değer yerine hesaplanan bir değerse byteOffset , çağıranlar tamsayı taşma olasılığını dikkate almalıdır. Örneğin, çağrısında Unsafe.SubtractByteOffset<int>(ref ptr, a * b)çağıranın ara değerin a * b sınırlarını IntPtraşmadığından emin olması gerekir.
Şunlara uygulanır
SubtractByteOffset<T>(T, UIntPtr)
- Kaynak:
- Unsafe.cs
- Kaynak:
- Unsafe.cs
- Kaynak:
- Unsafe.cs
- Kaynak:
- Unsafe.cs
Önemli
Bu API, CLS uyumlu değildir.
Verilen yönetilen işaretçiden bayt uzaklığını çıkarır.
public:
generic <typename T>
static T % SubtractByteOffset(T % source, UIntPtr byteOffset);
[System.CLSCompliant(false)]
public static ref T SubtractByteOffset<T>(ref T source, UIntPtr byteOffset) where T : allows ref struct;
public static ref T SubtractByteOffset<T>(ref T source, nuint byteOffset);
[System.CLSCompliant(false)]
public static ref T SubtractByteOffset<T>(ref T source, UIntPtr byteOffset);
[<System.CLSCompliant(false)>]
static member SubtractByteOffset : 'T * unativeint -> 'T
static member SubtractByteOffset : 'T * unativeint -> 'T
Public Shared Function SubtractByteOffset(Of T) (ByRef source As T, byteOffset 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.
- byteOffset
-
UIntPtr
nuint
unativeint
Çıkaracak uzaklık.
Döndürülenler
Kaynak işaretçiden belirtilen bayt uzaklığının çıkarıldığını yansıtan yeni bir yönetilen işaretçi.
- Öznitelikler
Açıklamalar
byteOffset parametresi, işaretçiden source çıkaracak bayt sayısıdır. Örneğin, türünde ref intbir kaynak işaretçi işaretleyicisi verüldüğünde, çağrıUnsafe.SubtractByteOffset<int>(ref ptr, (nuint)20), adresi ptr'den önce 20 bayta işaret eden yeni bir işaretçi döndürür.
Sabit kodlanmış sabit değer yerine hesaplanan bir değerse byteOffset , çağıranlar tamsayı taşma olasılığını dikkate almalıdır. Örneğin, çağrısında Unsafe.SubtractByteOffset<int>(ref ptr, a * b)çağıranın ara değerin a * b sınırlarını UIntPtraşmadığından emin olması gerekir.