一尘不染

无法在struct方法中分配属性

swift

在Swift中,我尝试执行以下操作:

struct Foo {
    var bar = 1

    func baz() {
        bar = 2
    }
}

Xcode Cannot assign to 'bar' in self在方法中在线上报告错误。

为什么?如果将结构更改为类,则不会出错。


阅读 199

收藏
2020-07-07

共1个答案

一尘不染

如果要修改结构的属性,请将该函数标记为mutating。

struct Foo {
    var bar = 1

    mutating func baz() {
        bar = 2
    }
}
2020-07-07