與C++一樣,C# 也是一種強(qiáng)類型語言,其每個(gè)變量和對(duì)象也都必須具有被預(yù)先聲明的類型。但是由于C# 是專門為.NET設(shè)計(jì)的語言,所以它的類型體系與C++有很大的不同,而與.NET框架一致。
C# 有如下兩大類型種類:
(1)值類型——包括簡單、枚舉、結(jié)構(gòu)和指針等類型。該類型的變量存儲(chǔ)數(shù)據(jù)本身,對(duì)值類型的變量進(jìn)行賦值時(shí),會(huì)復(fù)制變量所包含的值。其中的指針類型,僅可用于unsafe(非安全)模式。
(2)引用類型——包括類、接口和數(shù)組等類型。該類型(也稱為對(duì)象)的變量存儲(chǔ)對(duì)實(shí)際數(shù)據(jù)的引用,對(duì)引用類型的變量進(jìn)行賦值時(shí),只復(fù)制對(duì)象的引用(指針/句柄),而不會(huì)復(fù)制對(duì)象本身。
值類型可以通過裝箱(boxing)轉(zhuǎn)換成引用類型,然后再經(jīng)過拆箱(unboxing)轉(zhuǎn)換回值類型。但是無法將原始的引用類型轉(zhuǎn)換為值類型。
C# 不支持聯(lián)合類型,也沒有關(guān)鍵字union。
新聞熱點(diǎn)
疑難解答
圖片精選