これは延期された実行の問題だと思いますが、多分私はポイントをいくらか見逃しています
私はループを持っているので
List<int> processed = new List<int>()
foreach(KeyValuePair<int,bool> tbl1 in tables.Where(z=>!processed.Contains(z.Key))){
//do some stuff...etc
processed.Add(someInt);
}
これは非常に危険だと思いますが、実際には実行の延期によってこれが機能しますか?実際には反復しているように見えますが、「期待どおり」とやや穏やかに言いますが....質問は、おそらくこれは悪い考えだと思います。通常、反復しているコレクションをいじるのは悪いことです。
考え?ありがとう
明確にすることは大丈夫です..質問は
テーブルはこのように埋められていると言います
1、true 2、false 3、false 4、false 5、false 6、false
最初のラップはtbl1で{1、true}を取得し、2番目のラップで処理済みリストにsay 2を追加すると、tbl1で{3、false}が取得され、次に3と4が処理済みの3番目のラップに追加されて{5、 tbl1のfalse}これは予想されますか?
4周目に処理に6を追加した場合、次の周回で再び{5、false}を取得しますか?繰り返しますが、これは予想されることですが、これはやや混乱し、危険だと感じていると思いますが、おそらくそれは私にとってだけです-完全に意味があるわけではないので
n