結構是值類型,只能繼承接口,不能被繼承,沒有默認的構造函數,可以創建,沒有析構函數,不可以用abstract和sealed,沒有protected修飾符,可以不用new初始化。
如何選擇使用結構還是類:
a) 堆棧的空間有限,對于大量的邏輯的對象,創建類要比創建結構好一些
b) 結構表示如點、矩形和顏色這樣的輕量對象,例如,如果聲明一個含有 1000 個點對象的數組,則將為引用每個對象分配附加的內存。在此情況下,結構的成本較低。
c) 在表現抽象和多級別的對象層次時,類是最好的選擇
d) 大多數情況下該類型只是一些數據時,結構是最佳的選擇