std::transform using C++0x lambda expression

后端 未结 6 1250
灰色年华
灰色年华 2020-12-28 13:05

How is this done in C++0x?

std::vector myv1;
std::transform(myv1.begin(), myv1.end(), myv1.begin(),
               std::bind1st(std::multiplies         


        
6条回答
  •  谎友^
    谎友^ (楼主)
    2020-12-28 13:57

    Just do as Dario says:

    for_each(begin(myv1), end(myv1), [](double& a) { a *= 3; });
    

    for_each is allowed to modify elements, saying it cannot is a myth.

提交回复
热议问题