Unsafe.Copy メソッド

定義

オーバーロード

名前 説明
Copy<T>(Void*, T)

指定した場所に T 型の値をコピーします。

Copy<T>(T, Void*)

指定した場所に T 型の値をコピーします。

Copy<T>(Void*, T)

ソース:
Unsafe.cs
ソース:
Unsafe.cs
ソース:
Unsafe.cs
ソース:
Unsafe.cs
ソース:
Unsafe.cs

重要

この API は CLS 準拠ではありません。

指定した場所に T 型の値をコピーします。

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

型パラメーター

T

コピーする値の型。

パラメーター

destination
Void*

コピー先の場所。

source
T

コピーする値への参照。

属性

注釈

destinationsourceの両方が、T型のデータへのポインターに対して適切に配置されていると見なされます。 アライメントの前提条件の詳細については、 ECMA-335、Sec. I.12.6.2 ("Alignment") を参照してください。

このメソッドは、次のコードとほぼ同じです。

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

適用対象

Copy<T>(T, Void*)

ソース:
Unsafe.cs
ソース:
Unsafe.cs
ソース:
Unsafe.cs
ソース:
Unsafe.cs
ソース:
Unsafe.cs

重要

この API は CLS 準拠ではありません。

指定した場所に T 型の値をコピーします。

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

型パラメーター

T

コピーする値の型。

パラメーター

destination
T

コピー先の場所。

source
Void*

コピーする値へのポインター。

属性

注釈

destinationsourceの両方が、T型のデータへのポインターに対して適切に配置されていると見なされます。 アライメントの前提条件の詳細については、 ECMA-335、Sec. I.12.6.2 ("Alignment") を参照してください。

このメソッドは、次のコードとほぼ同じです。

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

適用対象