- c#air合併の強力な機能の詳細な理解(??)
c#プログラミングでは、神秘的なコードに遭遇した可能性があります:
このコードの行には、人々の好奇心を引き起こした一連の印象的な二重の質問マーク「??」が含まれています。それらは三元コンピューティングシンボルの新しい形式ですか?
FormsAuth = formsAuth ?? new FormsAuthenticationWrapper();
答えは、航空合併の概念にあります(??)。 Sanyuan(すぐにIF)と同様に、航空合併オペレーターは、値が空であるかどうかを評価するための簡単な方法を提供します。 <开>展開
上記の式を展開し、次のロジックに相当するアイテムを取得します。
さらに馴染みのある形式にさらに拡大:
<含>意味と使用法
FormsAuth = formsAuth != null ? formsAuth : new FormsAuthenticationWrapper();
本質的に、左側の値が空でない場合、空気マージオペレーターの値は左側の値です。そうでなければ、それは右側の値として沈黙しています。言い換えれば、「左の値が空でない場合は、右側の値を使用します。」
この演算子は、デフォルト値の初期化変数を使用して、プログラムの実行中に空白のままであることを確認するのに特に役立ちます。また、複数の航空合併オペレーターを使用して、最初の非空白の価値割り当てを確保するためにも使用できます。if (formsAuth != null) FormsAuth = formsAuth; else FormsAuth = new FormsAuthenticationWrapper();
注目に値する詳細
概念は上記の拡張に相当しますが、航空合併オペレーターは各式を1回だけ評価することに注意する必要があります。これは、副作用の可能性のある方法を含む式の1つである場合に特に重要です。以上がC#null Coalescingオペレーター(??)とは何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。