C#のNULL合体演算子(??)に関する次の理解をもとにしてください。Null-Coalescing演算子の結果の暗黙のキャスト
int? input = -10;
int result = input ?? 10;//Case - I
//is same as:
int result = input == null? input : 10; // Case - II
ケースIとケースIIは同じ意味で使用されますが、
Case-Iコンパイラがintを暗黙的にキャストできることは驚くべきことですか? intに変換すると、Case-IIでエラーが表示されます。 'エラー1暗黙的に' int型を変換できませんか? 'ご関心のため
感謝。
@hvd:絶対に正しいが、私は悪い例を有するためOPのせい。 : - P編集されました。 –
実際、私はあなたの答えは少し外れていると思います。 b:c'( 'b'は' int''、 'c'は' int'です)は完全に有効です。しかし、結果には 'int? '型があるので、'(a?b:c).Value'が必要です。またはあなたの提案された訂正。 – hvd