【发布时间】:2013-11-07 20:53:18
【问题描述】:
从stl::generate 的指针中使用方法的最佳方式是什么?一个例子:
std::vector<double> doSomethingToAVector(boost::shared_ptr<RandomGenerator> randomGen){
std::vector<double> output(100);
std::generate(output.begin(), output.end(), randomGen->returnANumber());
return output;
}
RandomGenerator 只是一个任意类,其方法 returnANumber() 返回任意双精度。
我的编译器目前说
called object type 'double' is not a function or function pointer
*__first = __gen();
我应该使用mem_fun 还是其他类似的魔法?
【问题讨论】: