Swift結構體聲明
結構體聲明
使用結構體聲明可以在你的程序裏引入一個結構體類型。結構體聲明使用struct關鍵字,遵循如下的形式:
struct
structure name
:adopted protocols
{declarations
}
結構體內包含零或多個聲明。這些聲明可以包括存儲型和計算型屬性,靜態屬性,實例方法,靜態方法,構造器, 類型別名,甚至其他結構體,類,和枚舉聲明。結構體聲明不能包含析構器或者協議聲明。詳細討論和包含多種結構體 聲明的實例,參見類和結構體一節。
結構體可以包含任意數量的協議,但是不能繼承自類,枚舉或者其他結構體。
有三種方法可以創建一個聲明過的結構體實例:
-調用結構體內聲明的構造器,參照構造器(initializers)一節。
—如果沒有聲明構造器,調用結構體的逐個構造器,詳情參見Memberwise Initializers for Structure Types.
—如果沒有聲明析構器,結構體的所有屬性都有初始值,調用結構體的默認構造器,詳情參見默認構造器(Default Initializers).
結構體的構造過程參見初始化(initiaization)一節。
結構體實例屬性可以用點(.)來獲得,詳情參見獲得屬性(Accessing Properties)一節。
結構體是值類型;結構體的實例在被賦予變量或常量,被函數調用時被複制。獲得關於值類型更多信息,參見 結構體和枚舉都是值類型(Structures and Enumerations Are Value Types)一節。
你可以使用擴展聲明來擴展結構體類型的行爲,參見擴展聲明(Extension Declaration).
結構體聲明語法
結構體聲明 → 特性(Attributes)列表 可選 struct 結構體名稱 泛型參數子句 可選 類型繼承子句 可選 結構體主體
結構體名稱 → 標識符
結構體主體 → { 聲明(Declarations)列表 可選 }