c#でループカウンタをクロージャ変数として使うときのforを隠蔽
c# LINQと拡張メソッド追加に関して - AccessViolation Exception
に更新されました。
時折「お前はn番目だからその数値を投げてこい」というような処理をしたくなる。無論実装は容易なのだが問題なのがforeach使ったりするとインデックスを取ってくるのが面倒なのと、余計なインスタンス等を生成せずにやろうとしようものならforと[]でアクセスすることになる。
ダサいのでforを隠蔽できるようにした。
var list = new List<T>(); list.IndexedProcess((s,i) => { //iがlist.IndexOf(s)と等しい });
てな感じ。余計な手間が省けて良い