Unsafe.AddByteOffset Yöntem

Tanım

Aşırı Yüklemeler

Name Description
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.

AddByteOffset<T>(T, IntPtr)

Kaynak:
Unsafe.cs
Kaynak:
Unsafe.cs
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) where T : allows ref struct;
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

T

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 intbir kaynak işaretçi ptr'sı verilip çağrıUnsafe.AddByteOffset<int>(ref ptr, 20), adresi ptr'nin 20 bayt ötesinde olan yeni bir işaretçi döndürür.

Sabit kodlanmış değişmez değer yerine hesaplanan bir değerse byteOffset , çağıranların tamsayı taşma olasılığını göz önünde bulundurması gerekir. Ö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ı IntPtraşmadığından emin olması gerekir.

Şunlara uygulanır

AddByteOffset<T>(T, UIntPtr)

Kaynak:
Unsafe.cs
Kaynak:
Unsafe.cs
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) where T : allows ref struct;
public static ref T AddByteOffset<T>(ref T source, nuint byteOffset);
[System.CLSCompliant(false)]
public static ref T AddByteOffset<T>(ref T source, UIntPtr 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

T

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 intbir kaynak işaretçi ptr'sı verilip çağrıUnsafe.AddByteOffset<int>(ref ptr, (nuint)20), adresi ptr'nin 20 bayt ötesinde olan yeni bir işaretçi döndürür.

Sabit kodlanmış değişmez değer yerine hesaplanan bir değerse byteOffset , çağıranların tamsayı taşma olasılığını göz önünde bulundurması gerekir. Ö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ı UIntPtraşmadığından emin olması gerekir.

Şunlara uygulanır