関数オブジェクトを期待している引数を
template<class F>void call(F f);
のようにコピーで受け取るのが流行ってるのはなぜですか?
無駄なコストに思えるのですが合理的な理由があるのでしょうか