|
|
連載:[完全版]究極のC#プログラミング
Chapter12 varによる変数宣言とコレクション初期化子
川俣 晶
2010/02/01 |
|
|
12.9 暗黙に型付けされた配列とnull
「暗黙に型付けされた配列」でも、「暗黙的に型指定されるローカル変数」と同様に、やはりnullは特殊な扱いを受ける。しかし、nullがつねに受け付けられないわけではない。
たとえば、次のケースは有効である。文字列である"A"や"B"によって型を推測できるので、nullが含まれていても推測できる。
var case1 = new[] { "A", "B", null }; // case1はstring型
|
|
しかし、次のケースでは型を推測する手かかりがないので、コンパイルエラーとなる。
var case2 = new[] { null, null, null };
// エラー 1 暗黙的に型指定された配列の最適な型が見つかりませんでした
|
|
とはいえ、型のヒントさえあればよいので、次のようにnull値にキャストを付けて型を明示してやれば、コンパイル可能となる。
var case3 = new[] { (string)null, null, null }; // case3はstring型
|
|
しかし、次のように型を明示して書くほうが短く書けるので、あまり役立つテクニックでもないだろう。
string [] case4 = { null, null, null };
|
|
Insider.NET 記事ランキング
本日
月間