1. 程式人生 > >C#結構體與類的區別

C#結構體與類的區別

1,結構體定義的是變數,儲存在棧當中。類的物件(例項)儲存在堆當中,引用儲存在棧當中。結構體是值型別,類是引用型別。

2,不能在結構體中定義預設的構造方法(無參);類中可以定義。

3,結構體中自定義構造方法後,編譯器會提供預設的構造方法,但是類就不會提供了。

4,在結構體中的非預設構造方法中必須對結構體所有的欄位進行初始化,否則會報錯

5,在類中宣告欄位的同時,可以初始化欄位的值,但在結構體中不可以。