類別與結構的分別

   一直以來雖然對類別與結構分別有基本的瞭解,但有人問我差異是在哪時,我又說不太出個所以然...所以花了點時間閱讀讀一下msdn的文章study一下
以下是結構的應用

結構與類別所使用的語法幾乎相同,不過結構的限制比類別多:
結構宣告內不能初始化欄位,除非將其宣告為 const 或 static。
結構不可宣告預設建構函式 (沒有參數的建構函式) 或解構函式。

  • 結構為實值型別,而類別則是參考型別。
  • 與類別不同的是,結構不需使用 new 運算子就能執行個體化
  • 結構可以宣告建構函式,但是必須採用參數
  • 結構無法從另一個結構或類別繼承而來,且它不能成為類別的基底。所有結構都是從繼承自 System.Object 的 System.ValueType 直接繼承而來
  • 結構可實作介面
  • 結構可以用來當做可為 Null 的型別,而且可以對其指派 null 值。

這個網誌中的熱門文章

[TFS] 分支與合併

[.NET Core] 將專案發行至IIS