C 可空型別

2021-06-08 08:31:27 字數 791 閱讀 9929

可空型別只能用於值型別,不能用於引用型別,引用型別本身支援null值。

如果直接把null賦值給int型別,會出現乙個錯誤"無法將 null 轉換成'int',因為它是一種值型別"。

賦值時應該使用 int? a = null;

可空型別與一元或二元運算子一起使用是,如果乙個運算元或兩個運算元都是null,其結果為null。

說白了int?a=null 這句話的意思就是讓值型別a可以接收null這個值

--舉例1---------

int? a = null;

int? b = a * 5; //b = null

int? c = a + 5; //c = null

--舉例2---------

int? a = null;

int? b = null;

if (a > b)

else

if (a == b)

else

輸出結果

a > b is false

a == b is true

--舉例3----------

int? a = null;

int b = -5;

if (a >= b)

else

else

輸出結果(從結果可以看出不能正確識別a>b還是ab和ab   

C 可空型別

c 提供了乙個特殊的資料型別,nullable型別 可空型別 可空型別可以表示其基礎值型別正常範圍內的值,再加上乙個 null 值。例如,nullable int32 讀作 可空的 int32 可以被賦值為 2,147,483,648 到 2,147,483,647 之間的任意值,也可以被賦值為 n...

C 可空型別

在一些情況下,這可能是乙個問題。c 有乙個解決方案 可空型別。可空型別是可以為空的值型別。可空型別只需要在型別的後面新增 在下面的 片段中,x1 是乙個普通的 int x2 是乙個可以為空的 int。因為 x2 是可以為空的 int,所以可以吧 null 分配給 x2 int x1 1 int?x2...

C 可空型別

c 提供了乙個特殊的資料型別,nullable型別 可空型別 可空型別可以表示其基礎值型別正常範圍內的值,再加上乙個 null 值。例如,nullable int32 讀作 可空的 int32 可以被賦值為 2,147,483,648 到 2,147,483,647 之間的任意值,也可以被賦值為 n...