我试图定义一个类。当我使用
分配时this = blah blah
编译器报告“这是只读”
当我将类更改为struct时,它看起来很好,任何想法?
答案 0 :(得分:21)
this
中的 class
指的是引用; 你不能重新分配你自己的参考,但你可以指定当前实例的字段等。
this
中的 struct
将引用为值本身;当您分配this
时,就像分配给任何值类型变量/参数一样,它会将所有字段复制到顶部(作为内存副本)。 是可能的,但坦白地说很难看到。或者,与类一样,您可以单独分配每个字段。