Am I reinventing the wheel with this trivial method call forwarding class?
问题 I just found myself creating a class template <typename T> struct invoker { void operator()(T& it) const {it();} }; so I could pass an invoker<foo> to something (which isn't under my control) which wants to call invoker<foo>::operator()(foo&) on it repeatedly with different foo instances, to get it to forward those calls to the foo 's foo::operator()() method. I know it's only a few lines, but this seems like the sort of thing which is probably already provided for by STL's functional, or