.NET中的類型有5中:類、結構、枚舉、接口和委託。而類和結構有着很大的相似性,都可以擁有向字段、方法這樣的成員。
但是,類和結構還是有很多不同的。
1)結構是 值類型,而類確是引用類型的。
2)結構不支持繼承。
3)因爲結構是 值類型的,所以兩個變量不能指向同一結構實例。
4)引用類型可以爲空(null),但卻不能給值類型賦值爲空,會導致編譯出錯
例如 System.DataTime是一個結構,以下是錯誤的
System.dataTime today = null; //Wrong
爲了規避這個問題,.NET Framework提供了System.Nunllable結構來使任意結構可以爲空, 簡單的寫法爲: System.dataTime? today = null;
int? x = null; //x是nullable
C#中所有的基本類型,都是在System命名空間中所定義的結構的別名。例如 int和char,我們每在C#中聲明一個int,就會創建一個System.Int32實例,每一個char,就會有一個System.Char實例支持它。值類型繼承自System.ValueType,引用類型繼承自System.Object。
還有一個小問題我之前沒聽過,就是程序集的概念
【我們可以在System.Numerics.dll程序集中找到System.Numerics命名空間,要使用其成員,我們需要現在項目中增加對這個程序集的引用】 Project->Add Reference選中想引用組件類型的標籤頁