
23 Apr
2003
23 Apr
'03
4:21 a.m.
Hi Russell, Russell Hind wrote:
I have a std::list of boost::function0<void> I would like to call all items using a for_each statement. Is there a standard function object that I can pass into the for_each call that will call operator() on each element?
Yes, std::mem_fun_ref. Complete example tested with g++ 3.2 is at the end. HTH, Volodya #include <boost/function.hpp> using namespace boost; #include <vector> #include <functional> #include <iostream> #include <algorithm> using namespace std; void foo() { cout << "foo\n"; } int main() { vector<function0<void> > v; v.push_back(foo); for_each(v.begin(), v.end(), mem_fun_ref(&function0<void>::operator())); return 0; }