我有一个看起来像这样的课程.
class A { public: void doSomething(); }
我有这些类的数组.我想在数组中的每个项目上调用doSomething().使用算法标题最简单的方法是什么?
使用std :: mem_fun_ref将成员函数包装为一元函数.
#include#include std::vector the_vector; ... std::for_each(the_vector.begin(), the_vector.end(), std::mem_fun_ref(&A::doSomething));
如果向量包含指向类的指针而不是对象本身,也可以使用std :: mem_fun.
std::vector the_vector; ... std::for_each(the_vector.begin(), the_vector.end(), std::mem_fun(&A::doSomething));