当我将字典作为成员时,作业不会编译:
struct MyClass {
var lists = [String:Int]();
init() {}
func add() {
// this compiles
var x = [String:Int]();
x["y"] = 3;
// this gets the compiler error 'cannot assign to the result of this expression'
self.lists["y"] = 3;
}
关于破坏编译的成员资格是什么?如果我将该行放在init()FWIW中,我就不会收到此错误。
答案 0 :(得分:2)
您需要在函数声明中添加class A {
boolean doSomething() {
return new B().doSomething();
}
}
class B {
boolean doSomething() {
return true;
}
}
,因为如果您未在mutating
中指定该关键字,则属性是只读的:
struct