当基类具有相同名称的可选属性时,无效的协议属性重新声明

时间:2018-09-24 16:34:15

标签: swift properties swift-protocols

我有一个协议,该协议的属性为name: String。我有一个属性为name: String?的基类。当我尝试采用该协议时,我不断收到无效的重新声明错误。如何重新声明具有相同名称但可选的属性?

enter image description here

protocol Targetable {
    var id: String { get }
    var name: String { get }
}

1 个答案:

答案 0 :(得分:1)

您不能具有名称相同但类型不同的多个属性,因此无法实现您要实现的目标。即使您将name的类型更改为完全不相关的类型(假设为Int),您也会得到相同的错误,这与两个声明之一为{{1 }}。