2008-01-25から1日間の記事一覧

関数オブジェクトを受け取るアルゴリズム

C++

上述の文脈の流れで、STLのforeachなど、動作の述語引数として、関数オブジェクト、関数ポインタともに受け取るような関数は、 template< class T > void DoSomething( T func ) { int a, b; char* buff; .. func();// Tは引数なしで呼び出せる「何か」でさ…

ポリシークラスとホストクラス〜ポリシーベースドクラスデザイン

C++

ある決まったインタフェースのセットをクラスが持つように要求するとき、そのインターフェースのセットそのものをまとめて、「ポリシー」と呼ぶ。そのポリシーを持っているクラスそのものを「ポリシーの実装」や 「ポリシークラス」と呼んだりもする。 たと…