我只是对此感到好奇: 下面的代码不能编译,因为我们不能修改 foreach 迭代变量:
foreach (var item in MyObjectList)
{
item = Value;
}
但是下面的代码将编译并运行:
foreach (var item in MyObjectList)
{
item.Value = Value;
}
为什么第一个是无效的,而第二个可以做同样的下面(我正在为此搜索正确的英语表达式,但我不记得它。在... ?^^ )