在符合协议的扩展中使用原始类变量

时间:2017-07-12 11:53:22

标签: swift swift-protocols swift-extensions

我有一种情况,我希望能够使用类中的现有字段来满足指定协议的类的扩展。像这样:

class SomeThing {
    var foo: String
}

protocol MyProtocol {
    var foo: String { get }
    func someOtherMethod()
}

extension SomeThing: MyProtocol {
    func someOtherMethod() {
    }
}

但编译器在定义扩展名的文件中抛出错误,SomeThing不完全符合协议。有没有办法使这个工作,以便扩展只是抓住原始对象的值?

0 个答案:

没有答案