C# null ステートメントを深く理解します。
C# 8.0 の null!
ステートメントは、開発者が特定の式の null 参照チェックを抑制できる強力なツールです。ただし、使用する前に、その仕組みと効果を理解することが重要です。
NULL 許容演算子
null!
ステートメントは、null 許容演算子 (!
) を使用します。この演算子には、コンテキストに応じて 2 つの機能があります。型に適用すると、型の null 可能性が null 許容から null 非許容に変更されます。これは null 許容演算子と呼ばれます。
null チェックを抑制します
式 (null!
など) に適用すると、null 許容演算子は、その特定の式に対する null チェックを抑制します。これにより、式の null 許容値がオーバーライドされ、その特定の操作で null 非許容値として使用できるようになります。
技術解説
C# 8.0 では、null の安全性を向上させるために null 許容参照型が導入されています。デフォルトでは、すべての参照型は null 非許容です。つまり、null 値を保持できません。 ?
および !
演算子は、このデフォルトをオーバーライドできます。
?
演算子は、型を null 許容としてマークし、null 値を保持できるようにします。一方、!
演算子は型を null 非許容としてマークし、null 値を保持できないようにします。
null をいつ使用するか?
null!
ステートメントは注意して使用する必要があり、過度の使用は避けてください。主に次のシナリオで使用されます:
例: null! ステートメントを理解する
指定したコード内:
FirstName { get; }
は null 非許容文字列として宣言されており、null 値を保持できないことを意味します。 LastName { get; } = null!
は、最初に null の値を割り当てたにもかかわらず、LastName
プロパティを null 非許容として宣言します。 null!
を使用すると、デフォルトの null 可能性をオーバーライドし、このプロパティが null 非許容として扱われるようにすることができます。 以上がC# の null を使用する必要がある場合とその理由!オペレーター?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。