Swift 初始化器:深入解析与应用
1. 初始化器基础与 MutabilityLand 类
在 Swift 编程中,初始化器是创建类或结构体实例时至关重要的部分。以 MutabilityLand 类为例,它继承自 BoardGame 类。最初, MutabilityLand 有两个属性: scoreBoard 和 winner 。 scoreBoard 是一个字典,用于记录每个玩家的得分,而 winner 是一个可选类型,用于记录游戏的最新获胜者。
class MutabilityLand: BoardGame {
// ScoreBoard 初始化为空字典
var scoreBoard = [String: Int]()
var winner: Player?
}
值得注意的是,这两个属性不需要额外的初始化器。 scoreBoard 已经在初始化器外部进行了初始化,而 winner 是可选类型,允许为 nil 。
2. 丢失便利初始化器
当子类添加未填充的属性时,会出现一个棘手的问题:子类的使用者将失去所有父类的初始化器。例如,为 MutabilityLand 添加一个
超级会员免费看
订阅专栏 解锁全文
373

被折叠的 条评论
为什么被折叠?



