.NET中的類型有5中:類、結(jié)構(gòu)、枚舉、接口和委托。而類和結(jié)構(gòu)有著很大的相似性,都可以擁有向字段、方法這樣的成員。
創(chuàng)新互聯(lián)專注于鷹手營子網(wǎng)站建設(shè)服務(wù)及定制,我們擁有豐富的企業(yè)做網(wǎng)站經(jīng)驗。 熱誠為您提供鷹手營子營銷型網(wǎng)站建設(shè),鷹手營子網(wǎng)站制作、鷹手營子網(wǎng)頁設(shè)計、鷹手營子網(wǎng)站官網(wǎng)定制、重慶小程序開發(fā)服務(wù),打造鷹手營子網(wǎng)絡(luò)公司原創(chuàng)品牌,更為您提供鷹手營子網(wǎng)站排名全網(wǎng)營銷落地服務(wù)。
但是,類和結(jié)構(gòu)還是有很多不同的。
1)結(jié)構(gòu)是 值類型,而類確是引用類型的。
2)結(jié)構(gòu)不支持繼承。
3)因為結(jié)構(gòu)是 值類型的,所以兩個變量不能指向同一結(jié)構(gòu)實例。
4)引用類型可以為空(null),但卻不能給值類型賦值為空,會導(dǎo)致編譯出錯
例如 System.DataTime是一個結(jié)構(gòu),以下是錯誤的
System.dataTime today = null; //Wrong
為了規(guī)避這個問題,.NET Framework提供了System.Nunllable結(jié)構(gòu)來使任意結(jié)構(gòu)可以為空, 簡單的寫法為: System.dataTime? today = null;
int? x = null; //x是nullable
C#中所有的基本類型,都是在System命名空間中所定義的結(jié)構(gòu)的別名。例如 int和char,我們每在C#中聲明一個int,就會創(chuàng)建一個System.Int32實例,每一個char,就會有一個System.Char實例支持它。值類型繼承自System.ValueType,引用類型繼承自System.Object。
還有一個小問題我之前沒聽過,就是程序集的概念
【我們可以在System.Numerics.dll程序集中找到System.Numerics命名空間,要使用其成員,我們需要現(xiàn)在項目中增加對這個程序集的引用】 Project->Add Reference選中想引用組件類型的標簽頁
網(wǎng)站題目:.NET中結(jié)構(gòu)與類的區(qū)別
轉(zhuǎn)載來源:http://aaarwkj.com/article24/jejdje.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供、自適應(yīng)網(wǎng)站、軟件開發(fā)、網(wǎng)站維護、服務(wù)器托管、動態(tài)網(wǎng)站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)