ひさしぶり。 こういうことってよくあると思います。 前処理 hoge 処理 A 後処理 fuga 前処理 hoge 処理 B 後処理 fuga 前処理 hoge 処理 B 後処理 fugaそれぞれ前処理と後処理は同じことをやっている、というものです。プログラミングの基本として、共通する部分は関数としてまとめる、というのがありますが、この場合処理の中身が異なるのでそういうわけにもいきません。 関数型言語に高階関数というのがあります。(高階関数 - Wikipedia) まさしくやりたいのはこういうこと。関数型言語では引数に関数を渡すことが簡単にできると。 C言語の例が載っています。関数ポインタで実現させているんですね。 C# で関数を引数とする、で思いつくのがデリゲート。これを使えば実現できそうです。 でも個人的にはデリゲートだと宣言の部分などが冗長という印象があって、そこまでやること無いか