如何修改List成员的内容?
比如定义个结构
struct test{
public int a;
public int b;
}
定义个List List<test> list;
如果单纯读取没有问题
int a = list[0].a; //正确
但是如果进行赋值就不行
list[0].a=a; //错误
那么如果要修改List中某个对象的某个成员值,有什么简便的办法。
[解决办法]
枚举器只能读,不能更改,
[解决办法]
因为test是一个结构,list[0]返回了一个结构的拷贝。因为在拷贝上修改a是没有意义的,所以编译器给出错误提示。
你可以把struct改成class。或者,以结构为单位进行操作:
test t = list[0];
t.a = 123;
list[0] = t;
如上所述,struct是值类型,不是引用类型