1. 程式人生 > >C# 結構(struct)的特點

C# 結構(struct)的特點

事件 操作 改變 引用 struct 構造函數 virtual protected 方法

1、C# 中的結構有以下特點:

  • 結構可帶有方法、字段、索引、屬性、運算符方法和事件。
  • 結構可定義構造函數,但不能定義析構函數。但是,您不能為結構定義默認的構造函數。默認的構造函數是自動定義的,且不能被改變。
  • 與類不同,結構不能繼承其他的結構或類。
  • 結構不能作為其他結構或類的基礎結構。
  • 結構可實現一個或多個接口。
  • 結構成員不能指定為 abstract、virtual 或 protected。
  • 當您使用 New 操作符創建一個結構對象時,會調用適當的構造函數來創建結構。與類不同,結構可以不使用 New 操作符即可被實例化。
  • 如果不使用 New 操作符,只有在所有的字段都被初始化之後,字段才被賦值,對象才被使用。

2、類 vs 結構

類和結構有以下幾個基本的不同點:

  • 類是引用類型,結構是值類型。
  • 結構不支持繼承。
  • 結構不能聲明默認的構造函數。

C# 結構(struct)的特點