int 型のページ カウンターがありますか?:
spot.ViewCount += 1;
ViewCount プロパティの値がNULL (任意の int) でない場合にのみ機能します。
なぜコンパイラはそうするのですか?
どんな解決策にも感謝します。
int 型のページ カウンターがありますか?:
spot.ViewCount += 1;
ViewCount プロパティの値がNULL (任意の int) でない場合にのみ機能します。
なぜコンパイラはそうするのですか?
どんな解決策にも感謝します。
Null
と同じではありません0
。したがって、null を int 値 (またはその他の値の型) に増やす論理演算はありません。たとえば、 null 許容 int の値を null から に増やしたい場合は、1
これを行うことができます。
int? myInt = null;
myInt = myInt.HasValue ? myInt += 1 : myInt = 1;
//above can be shortened to the below which uses the null coalescing operator ??
//myInt = ++myInt ?? 1
(ただし、これは増加していないことnull
に注意してください。null として設定されている場合、null 許容の int 値に整数を割り当てる効果を達成しているだけです)。
null 許容型にはリフトされた演算子があるためです。一般に、これは C#での関数リフティングの特定のケースです(または、少なくともそのように見えます。間違っている場合は修正してください)。
つまり、 を使用した操作にnull
はnull
結果が含まれます (例:1 + null
などnull * null
) 。