Udostępnij za pośrednictwem


Unsafe.Copy Metoda

Definicja

Przeciążenia

Copy<T>(Void*, T)

Kopiuje wartość typu T do danej lokalizacji.

Copy<T>(T, Void*)

Kopiuje wartość typu T do danej lokalizacji.

Copy<T>(Void*, T)

Źródło:
Unsafe.cs
Źródło:
Unsafe.cs
Źródło:
Unsafe.cs

Ważne

Ten interfejs API nie jest zgodny ze specyfikacją CLS.

Kopiuje wartość typu T do danej lokalizacji.

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

Parametry typu

T

Typ wartości do skopiowania.

Parametry

destination
Void*

Lokalizacja do skopiowania.

source
T

Odwołanie do wartości do skopiowania.

Atrybuty

Uwagi

Zakłada się, że zarówno, destination jak i source są prawidłowo wyrównane dla wskaźników do danych typu T. Aby uzyskać więcej informacji na temat założeń dotyczących wyrównania, zobacz ECMA-335, Sec. I.12.6.2 ("Wyrównanie").

Ta metoda jest w przybliżeniu równoważna następującemu kodowi.

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

Dotyczy

Copy<T>(T, Void*)

Źródło:
Unsafe.cs
Źródło:
Unsafe.cs
Źródło:
Unsafe.cs

Ważne

Ten interfejs API nie jest zgodny ze specyfikacją CLS.

Kopiuje wartość typu T do danej lokalizacji.

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

Parametry typu

T

Typ wartości do skopiowania.

Parametry

destination
T

Lokalizacja do skopiowania.

source
Void*

Wskaźnik do wartości do skopiowania.

Atrybuty

Uwagi

Zakłada się, że zarówno, destination jak i source są prawidłowo wyrównane dla wskaźników do danych typu T. Aby uzyskać więcej informacji na temat założeń dotyczących wyrównania, zobacz ECMA-335, Sec. I.12.6.2 ("Wyrównanie").

Ta metoda jest w przybliżeniu równoważna następującemu kodowi.

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

Dotyczy