Unsafe.AddByteOffset Yöntem
Ö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.
AddByteOffset<T>(T, IntPtr) |
Verilen yönetilen işaretçiye bayt uzaklığı ekler. |
AddByteOffset<T>(T, UIntPtr) |
Verilen yönetilen işaretçiye bayt uzaklığı ekler. |
- Kaynak:
- Unsafe.cs
- Kaynak:
- Unsafe.cs
- Kaynak:
- Unsafe.cs
Verilen yönetilen işaretçiye bayt uzaklığı ekler.
public:
generic <typename T>
static T % AddByteOffset(T % source, IntPtr byteOffset);
public static ref T AddByteOffset<T>(ref T source, IntPtr byteOffset);
static member AddByteOffset : 'T * nativeint -> 'T
Public Shared Function AddByteOffset(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ığı eklemek için yönetilen işaretçi.
- byteOffset
-
IntPtr
nativeint
Eklenecek uzaklık.
Döndürülenler
Belirtilen bayt uzaklığının kaynak işaretçiye eklenmesini yansıtan yeni bir yönetilen işaretçi.
Açıklamalar
byteOffset
parametresi, işaretçiye eklenecek source
bayt sayısıdır. Örneğin, türünde ref int
bir kaynak işaretçi ptr değeri verüldüğünde, çağrı Unsafe.AddByteOffset<int>(ref ptr, 20)
adresi ptr'nin 20 bayt ötesine işaret eden yeni bir işaretçi döndürür.
Sabit kodlanmış değişmez değer yerine hesaplanan bir değerse byteOffset
, çağıranlar tamsayı taşması olasılığını dikkate almalıdır. Örneğin çağrısında Unsafe.AddByteOffset<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
.NET 10 ve diğer sürümler
Ürün | Sürümler |
---|---|
.NET | Core 3.0, Core 3.1, 5, 6, 7, 8, 9, 10 |
.NET Standard | 2.0 (package-provided) |
- Kaynak:
- Unsafe.cs
- Kaynak:
- Unsafe.cs
- Kaynak:
- Unsafe.cs
Önemli
Bu API, CLS uyumlu değildir.
Verilen yönetilen işaretçiye bayt uzaklığı ekler.
public:
generic <typename T>
static T % AddByteOffset(T % source, UIntPtr byteOffset);
[System.CLSCompliant(false)]
public static ref T AddByteOffset<T>(ref T source, UIntPtr byteOffset);
public static ref T AddByteOffset<T>(ref T source, nuint byteOffset);
[<System.CLSCompliant(false)>]
static member AddByteOffset : 'T * unativeint -> 'T
static member AddByteOffset : 'T * unativeint -> 'T
Public Shared Function AddByteOffset(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ığı eklemek için yönetilen işaretçi.
- byteOffset
-
UIntPtr
nuint
unativeint
Eklenecek uzaklık.
Döndürülenler
Belirtilen bayt uzaklığının kaynak işaretçiye eklenmesini yansıtan yeni bir yönetilen işaretçi.
- Öznitelikler
Açıklamalar
byteOffset
parametresi, işaretçiye eklenecek source
bayt sayısıdır. Örneğin, türünde ref int
bir kaynak işaretçi ptr değeri verüldüğünde, çağrı Unsafe.AddByteOffset<int>(ref ptr, (nuint)20)
adresi ptr'nin 20 bayt ötesine işaret eden yeni bir işaretçi döndürür.
Sabit kodlanmış değişmez değer yerine hesaplanan bir değerse byteOffset
, çağıranlar tamsayı taşması olasılığını dikkate almalıdır. Örneğin çağrısında Unsafe.AddByteOffset<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
.NET 10 ve diğer sürümler
Ürün | Sürümler |
---|---|
.NET | 6, 7, 8, 9, 10 |
.NET Standard | 2.0 (package-provided) |
.NET geri bildirimi
.NET, açık kaynak bir projedir. Geri bildirim sağlamak için bir bağlantı seçin: