将std::vector<int> intVec
转换为std::vector<double> doubleVec
的干净方法是什么?或者,更一般地说,转换两个可转换类型的向量?
答案 0 :(得分:139)
使用std::vector
的范围构造函数:
std::vector<int> intVec;
std::vector<double> doubleVec(intVec.begin(), intVec.end());
答案 1 :(得分:0)
使用std::transform
算法:
std::transform(intVec.begin(), intVec.end(), doubleVec.begin(), [](int x) { return (double)x;});