标签: c# iterator enumerators
如果:
foreach(var a in col) { a.X = 1; }
我对集合的迭代器会变得无效吗?
由于
答案 0 :(得分:2)
没有。您可以访问集合中项目的成员。您的代码有效。
你不能做的是在迭代时修改集合本身(通过删除或添加项目)。
答案 1 :(得分:2)
它不应该导致问题。只有当您尝试通过col或col.Remove修改col.Add的内容时,我才会想到会出现问题。
col
col.Remove
col.Add