如何在C++ 0x中完成?

std::vector<double> myv1;
std::transform(myv1.begin(), myv1.end(), myv1.begin(),
               std::bind1st(std::multiplies<double>(),3));

最初的问题和解决方案是here

最佳答案

std::transform(myv1.begin(), myv1.end(), myv1.begin(),
   [](double d) -> double { return d * 3; });

关于c++ - 使用C++ 0x Lambda表达式进行std::transform,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/3885317/

10-11 04:07