我一直很想知道为什么你可以在 for 循环中创建类 'SomeClass' 的新对象,但你不能在 foreach 循环中做同样的事情。
以下是示例:
SomeClass[] N = new SomeClass[10];
foreach (SomeClass i in N)
{
i = new SomeClass(); // Cannot assign to 'i' because it is a 'foreach iteration variable'
}
for (int i = 0; i < N.Length; i++)
{
N[i] = new SomeClass(); // this is ok
}
有人能为我解释一下这个场景吗?