我有一个std::函数对象的向量。每个对象可以取一个int,所以我可以说obj(4)并得到一个int结果。如何使用每个元素的算法来处理向量的每个元素?

最佳答案

必须创建一个函子“调用”每个对象:

struct Caller {
  int value;
  void operator()( const YourFunctorHere& f ) const {
    f( value );
  }
} caller;
std::for_each( functors.begin(), functors.end(), caller );

关于c++ - 如何将for_each与功能作为重载的operator()一起使用,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/3082045/

10-12 20:38