FormatterServices.GetSafeUninitializedObject(Type) メソッド

定義

指定したオブジェクト型の新しいインスタンスを作成します。

public:
 static System::Object ^ GetSafeUninitializedObject(Type ^ type);
public static object GetSafeUninitializedObject (Type type);
[System.Security.SecurityCritical]
public static object GetSafeUninitializedObject (Type type);
static member GetSafeUninitializedObject : Type -> obj
[<System.Security.SecurityCritical>]
static member GetSafeUninitializedObject : Type -> obj
Public Shared Function GetSafeUninitializedObject (type As Type) As Object

パラメーター

type
Type

作成するオブジェクトの型です。

戻り値

指定した型の、0 に設定されたオブジェクト。

属性

例外

type パラメーターが null です。

type パラメーターが、有効な共通言語ランタイム型ではありません。

呼び出し元に、必要なアクセス許可がありません。

注釈

オブジェクトの新しいインスタンスは 0 に初期化され、コンストラクターは実行されないため、オブジェクトがそのオブジェクトによって有効と見なされる状態を表していない可能性があります。 GetSafeUninitializedObject は、ユーザーが直ちにすべてのフィールドを設定する場合にのみ、逆シリアル化に使用する必要があります。 不変型の空のインスタンスを作成しても目的がないため、初期化されていない文字列は作成されません。

GetSafeUninitializedObject は、すべてのクラス レベル の Link DemandsDemands に変換して、すべての直接呼び出し元と間接呼び出し元が、要求で指定するアクセス許可を確実に持っていることを確認します。 を使用して GetSafeUninitializedObject 、部分的に信頼されたソースから逆シリアル化する際のセキュリティ レベルを上げます。 完全信頼シナリオでパフォーマンスを向上させるには、 を使用します GetUninitializedObject

適用対象