我试图将变量添加到扩展中,但我知道这些只能使用AssociatedKeys,这是我们对Swift扩展的唯一限制
class Car {
var engine : Engine?
}
class Engine {}
extension Car{
var abc : String?
var xyz : String?
}
Extensions may not contain stored properties
答案 0 :(得分:0)
从documentation扩展程序可以:
Swift中的扩展程序可以:
- 添加计算实例属性和计算类型属性
- 定义实例方法和类型方法
- 提供新的初始化程序
- 定义下标
- 定义并使用新的嵌套类型
- 使现有类型符合协议
这个重要的说明:
扩展程序可以为类型添加新功能,但它们无法覆盖现有功能。