介紹C#結構體與類區別

1. 結構體與類定義方式

結構體定義使用struct類定義使用class
結構體:
struct testDemo{ int num; void action(){ } }
類:
class testDemo{ int num; void action(){ } }

==================c#

2. 結構體與類的成員初始化

  1. 結構體成員變量在聲明時不能賦值,而類在聲明變量時會自動寫入構造函數完成賦值(即只能定義,不能執行)。
  2. 結構體中隱式構造函數存在,不能手動寫,其他構造函數在手動編寫中必須對全部成員變量初始化。
  3. 在結構體建立中,若使用new建立,則可使用其中的成員變量(隱式構造函數會爲全部成員變量賦值,對於值類型初始化爲0,引用類型爲null)
  4. 結構體不能再繼承(結構體繼承自Object),但能夠implements接口

3.結構體與類最大的區別

  • 結構體是值類型,類是引用類型.
  • 結構體在棧中,訪問速度快,空間小。類在堆中,訪問速度比棧慢,空間大。
  • 結構體是值類型,類是引用類型。

C#實例:http://www.eyesourcecode.com/f/CSharp/1函數

相關文章
相關標籤/搜索