的方法是将一个容器中的元素转换并填充到另一个容器中。
下面是使用emplace_back与std::transform填充向量的示例代码:
#include <iostream>
#include <vector>
#include <algorithm>
// 转换函数
int square(int x) {
return x * x;
}
int main() {
std::vector<int> input = {1, 2, 3, 4, 5};
std::vector<int> output;
// 使用std::transform将input中的每个元素平方,并填充到output中
std::transform(input.begin(), input.end(), std::back_inserter(output), square);
// 使用emplace_back将10的平方填充到output中
output.emplace_back(square(10));
// 输出结果
for (const auto& num : output) {
std::cout << num << " ";
}
std::cout << std::endl;
return 0;
}
输出结果为:1 4 9 16 25 100
这段代码首先定义了一个名为input的vector容器,其中包含了一些整数。然后定义了一个名为output的空vector容器。
接下来,使用std::transform函数将input中的每个元素通过square函数进行平方操作,并将结果填充到output中。这里使用了std::back_inserter函数来在output的末尾插入新元素。
最后,使用emplace_back函数将10的平方填充到output中。
最终,通过遍历output容器,将结果输出到控制台。
推荐的腾讯云相关产品和产品介绍链接地址:
领取专属 10元无门槛券
手把手带您无忧上云