我有一个协议,该协议的属性为name: String
。我有一个属性为name: String?
的基类。当我尝试采用该协议时,我不断收到无效的重新声明错误。如何重新声明具有相同名称但可选的属性?
protocol Targetable {
var id: String { get }
var name: String { get }
}
答案 0 :(得分:1)
您不能具有名称相同但类型不同的多个属性,因此无法实现您要实现的目标。即使您将name
的类型更改为完全不相关的类型(假设为Int
),您也会得到相同的错误,这与两个声明之一为{{1 }}。