小编Car*_*kis的帖子

我们可以在 Swift 中编辑“let”协议属性的属性吗?

我有一个这样的代码(在操场上玩:

protocol ServiceProtocol {
    var enabled: Bool { get set }
}

class Service: ServiceProtocol {
    var enabled: Bool = false
}

class A {
    let service = Service()
}

class B {
    let service: ServiceProtocol = Service()
}

let a = A()
let b = B()

a.service.enabled = false
b.service.enabled = false // <-- the error is here: Cannot assign to property: 'service' is a 'let' constant
Run Code Online (Sandbox Code Playgroud)

如果我引用serviceService(class A),则一切都按预期进行。在 class 中Bservice …

let swift swift-protocols

0
推荐指数
1
解决办法
102
查看次数

标签 统计

let ×1

swift ×1

swift-protocols ×1