C# の動的型とは何ですか

C No Dong De Xingtoha Hedesuka



動的型は C# バージョン 4.0 で最初に導入されました。動的型では変数を次のように宣言できます。 動的 キーワード。これは、変数の型がコンパイル段階ではなくプログラムの実行中に決定されることを意味します。この柔軟性は、実行時まで型が不明なデータを処理する場合に有益であることがわかります。

ダイナミックタイピングとは

動的型付けにより、実行時に同じ変数に異なるタイプの値を割り当てることができます。変数の型がコンパイル時に決定され固定されたままになる静的型付けとは異なり、動的型付けでは、割り当てられた値に基づいて実行時に型を決定するため、柔軟性が得られます。コンパイル時の型チェックを実行時に延期することで、そのチェックを排除します。

動的型付けでは、コンパイル中にコンパイラーによる型チェックは実行されません。代わりに、変数の型は、割り当てられた値に基づいて実行時に決定されます。これにより、メソッド呼び出しとメンバー アクセスがオブジェクトの実際の型に基づいて動的に解決される遅延バインディングが可能になります。







C# で動的型を使用する方法

C# で動的型を使用するには、dynamic キーワードを使用して変数を宣言するだけです。例えば:



動的myVariable = 'こんにちは世界!' ;

この例では、myVariable が動的変数として宣言され、値「Hello, World!」が割り当てられます。実行時に、myVariable の型は文字列であると判断されます。



C# での動的型の使用例

このコードは、C# でのdynamic キーワードの使用を示しています。





システムを使用して ;
公開授業プログラム
{
公共 静的 空所 主要 ( )
{
動的 myDynamicVariable = 42 ;
コンソール。 ライトライン ( 「値: {0}、タイプ: {1}」 myDynamicVariable myDynamicVariable。 GetType ( ) ) ;

myDynamicVariable = 'こんにちは世界!' ;
コンソール。 ライトライン ( 「値: {0}、タイプ: {1}」 myDynamicVariable myDynamicVariable。 GetType ( ) ) ;

myDynamicVariable = 間違い ;
コンソール。 ライトライン ( 「値: {0}、タイプ: {1}」 myDynamicVariable myDynamicVariable。 GetType ( ) ) ;

myDynamicVariable = 日付時刻。 ;
コンソール。 ライトライン ( 「値: {0}、タイプ: {1}」 myDynamicVariable myDynamicVariable。 GetType ( ) ) ;

MyCustomFunction ( myDynamicVariable ) ;
}

公共 静的 空所 MyCustomFunction ( 動的データ )
{
コンソール。 ライトライン ( 「カスタム関数の出力: {0}」 データ ) ;
}
}

Dynamic キーワードを使用すると、変数を動的に型指定できます。つまり、変数の型が実行時に変更される可能性があります。コードでは、という名前の変数が myDynamicVariable は動的として宣言され、最初は整数値 42 が割り当てられます。その後、Console.WriteLine を使用してその型とともに出力されます。

次に、myDynamicVariable に文字列値 (「Hello World!」) が割り当てられ、その型が再度出力されます。同じプロセスがブール値に対して繰り返され、最後に DateTime.Now を使用して取得された現在の日付と時刻に対しても繰り返されます。



このコードには、動的パラメーター データを取得して出力する MyCustomFunction も含まれています。 myDynamicVariable 関数は引数と呼ばれ、動的変数を関数に渡すことができ、その型を実行時に決定できることを示しています。

結論

C# 4.0 の動的型を使用すると、型を指定せずに変数を宣言できます。これは、実行時に未知の型のデータを扱うときに役立ちます。動的型付けにより、コンパイラはコンパイル中に型チェックをスキップできます。代わりに、変数の型は、プログラムの実行時に、変数が保持する値に基づいて決定されます。動的型について詳しくは、この記事をご覧ください。