07/09/03 16:06:14
>>271
たとえば
string[] strArray = new str[]{"a","b","c"]
foreach(string str in strArray)
{
s="d"
}
ってやってもstrArrayには反映されない。
foreachの列挙子はIEnumerableの実装いかんによっては、何を
参照しているのか全く保障されない。
IEnumeratorは上記の例のようにコピーを返してくるかも知れない。
あと、IEnumuratorの実装クラスは「列挙」できればよく、要素の概念
を持たないものだってあるからね。
MSDNのIEnumerableのサンプルをみてみそ。