Visual Studio が新しく生成された配列を Nullable として入力するのはなぜですか?
C# で新しい配列を宣言するとき、Visual Studio は、 ?演算子を使用して、型が null 許容である可能性があることを示します。新しくインスタンス化された配列は常に null 以外の値を持つことが予想されるため、これは驚くべきことかもしれません。
Nullable Reference Types
C# 8.0 以降では、nullable参照型が使用可能になりました。この機能を使用すると、参照型に ? の注釈を付けることができます。 null 値を割り当てることができることを示します。有効にすると、コンパイラは潜在的な null 参照をチェックし、それに応じて警告またはエラーを発行します。
暗黙的な型付け
var キーワードを使用して変数を宣言する場合、型は初期化式から推測されます。配列を var 変数に割り当てると、型は TVal[]? として推論されます。TVal は配列要素の型です。これは、null 許容コンテキストが有効な場合、var は参照型に対して null 許容参照型を推論するためです。
Nullable 配列の理由
この動作の理由は、Visual Studio が潜在的な null 参照には注意してください。新しく作成された配列が null になる可能性は低いのは事実ですが、明示的 (例: null を割り当てる) または暗黙的 (例: 配列の長さを 0 に変更する) で、配列が後で null になる可能性があります。
結論
新しく作成された配列が null になることはまれですが、Visual Studio では次のように提案されています。 ? で注釈を付けます。演算子は、コードの後半で発生する可能性のある null 参照例外を防ぐための安全対策として使用されます。配列に null が割り当てられないことが確実な場合は、? を安全に削除できます。演算子。
以上がVisual Studio が C# で新しく作成された配列に対して Null 許容型を推奨するのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。