小编And*_*w H的帖子

如何使用带有其他参数的lambda函数的std :: transform

在C++ 11(或更高版本)中我可以使用std::transform和lambda函数来转换一个也采用其他参数的向量吗?例如,我如何传递param给下面的lambda函数?

std::vector<double> a{ 10.0, 11.0, 12.0 };
std::vector<double> b{ 20.0, 30.0, 40.0 };
std::vector<double> c;
double param = 1.5;
//The desired function is c = (a-b)/param   
transform(a.begin(), a.end(), b.begin(), std::back_inserter(c),
          [](double x1, double x2) {return(x1 - x2)/param; });
Run Code Online (Sandbox Code Playgroud)

std::transform想要一个带有两个输入参数的函数.我需要使用std::bind吗?

c++ lambda vector c++11

2
推荐指数
2
解决办法
719
查看次数

标签 统计

c++ ×1

c++11 ×1

lambda ×1

vector ×1