结构基础知识
struct Repository {
let identifier: Int
let name: String
var description: String?
}
这定义了一个 Repository
结构,它有三个存储的属性,一个整数 identifier
,一个字符串 name
和一个可选的字符串 description
。identifier
和 name
是常量,因为它们是使用 let
-keyword 声明的。在初始化期间设置后,无法修改它们。描述是一个变量。修改它会更新结构的值。
如果结构类型没有定义任何自己的自定义初始值设定项,则它们会自动接收成员初始值设定项。即使结构存储了没有默认值的属性,该结构也会接收成员初始值设定项。
Repository
包含三个存储的属性,其中只有 description
具有默认值(nil
)。此外,它没有定义自己的初始化器,因此它免费接收成员初始化器:
let newRepository = Repository(identifier: 0, name: "New Repository", description: "Brand New Repository")