Aracılığıyla paylaş


Unsafe.Copy Yöntem

Tanım

Aşırı Yüklemeler

Copy<T>(Void*, T)

Türündeki T bir değeri verilen konuma kopyalar.

Copy<T>(T, Void*)

Türündeki T bir değeri verilen konuma kopyalar.

Copy<T>(Void*, T)

Kaynak:
Unsafe.cs
Kaynak:
Unsafe.cs
Kaynak:
Unsafe.cs

Önemli

Bu API, CLS uyumlu değildir.

Türündeki T bir değeri verilen konuma kopyalar.

public:
generic <typename T>
 static void Copy(void* destination, T % source);
public static void Copy<T> (void* destination, ref T source);
[System.CLSCompliant(false)]
public static void Copy<T> (void* destination, ref T source);
static member Copy : nativeptr<unit> * 'T -> unit
[<System.CLSCompliant(false)>]
static member Copy : nativeptr<unit> * 'T -> unit

Tür Parametreleri

T

Kopyalanacak değerin türü.

Parametreler

destination
Void*

Kopyalanacak konum.

source
T

Kopyalanacak değere başvuru.

Öznitelikler

Açıklamalar

ve destinationsource türlerinin veri Tişaretçileri için uygun şekilde hizalandığı varsayılır. Hizalama varsayımları hakkında daha fazla bilgi için bkz. ECMA-335, Sn. I.12.6.2 ("Hizalama").

Bu yöntem kabaca aşağıdaki kodla eşdeğerdir.

static void Copy<T>(void* destination, ref T source)
{
  T data = source; // dereference source
  *(T*)destination = data;
}

Şunlara uygulanır

Copy<T>(T, Void*)

Kaynak:
Unsafe.cs
Kaynak:
Unsafe.cs
Kaynak:
Unsafe.cs

Önemli

Bu API, CLS uyumlu değildir.

Türündeki T bir değeri verilen konuma kopyalar.

public:
generic <typename T>
 static void Copy(T % destination, void* source);
public static void Copy<T> (ref T destination, void* source);
[System.CLSCompliant(false)]
public static void Copy<T> (ref T destination, void* source);
static member Copy : 'T * nativeptr<unit> -> unit
[<System.CLSCompliant(false)>]
static member Copy : 'T * nativeptr<unit> -> unit

Tür Parametreleri

T

Kopyalanacak değerin türü.

Parametreler

destination
T

Kopyalanacak konum.

source
Void*

Kopyalanacak değerin işaretçisi.

Öznitelikler

Açıklamalar

ve destinationsource türlerinin veri Tişaretçileri için uygun şekilde hizalandığı varsayılır. Hizalama varsayımları hakkında daha fazla bilgi için bkz. ECMA-335, Sn. I.12.6.2 ("Hizalama").

Bu yöntem kabaca aşağıdaki kodla eşdeğerdir.

static void Copy<T>(ref T destination, void* source)
{
  T data = *(T*)source; // reinterpret cast source as T* and dereference
  destination = data;
}

Şunlara uygulanır