我有这个代码:这2个片段严格等效吗?
foreach (object obj in _Destinations)
{
obj = _ItemsSource;
}
这是产生错误
不能分配给 'OBJ',因为它是一个 '的foreach迭代变量'
所以我“盘旋“与以下代码的问题:
for (int i = 0; i < _Destinations.Count; i++)
{
_Destinations[i] = _ItemsSource;
}
这适用于我的实际案例,但我不确定这是否与任何类型的对象完全相同。是这样吗?
编辑:_Destinations是List<object>
这个线程可能会让人感兴趣,为什么'foreach'循环为'for'循环表现出不同的行为:http://stackoverflow.com/questions/5650705/in-c-why-cant-i-modify-the-成员的价值型实例在一个foreach循环 – keyboardP 2011-12-22 13:12:29