gpt4 book ai didi

c++ - 2个 vector 的和值

转载 作者:IT老高 更新时间:2023-10-28 22:17:02 24 4
gpt4 key购买 nike

C++ 库中是否有任何实现的方法允许您对两个 vector (当然大小和类型相同)的值求和?
例如:

std::vector<int> a;//looks like this: 2,0,1,5,0
std::vector<int> b;//looks like this: 0,0,1,3,5

现在将它们的值相加应该如下所示:

//2,0,2,8,5

我期待的答案是“不,没有”或"is"+方法。

最佳答案

您可以使用 std::transform std::plus<int>()

std::vector<int> a;//looks like this: 2,0,1,5,0
std::vector<int> b;//looks like this: 0,0,1,3,5

// std::plus adds together its two arguments:
std::transform (a.begin(), a.end(), b.begin(), a.begin(), std::plus<int>());
// a = 2,0,2,8,5

这种形式的std::transform接受 5 个参数:

  • 两个 first 是第一个序列的初始和最终位置的输入迭代器。
  • 第三个是第二个范围初始位置的输入迭代器。
  • 第四个是存储运算结果的范围的初始位置的输出迭代器。
  • 最后一个参数是一个二进制函数,它接受两个元素作为参数(两个序列中的一个),并返回一些可转换为 OutputIterator 指向的类型的结果值。

关于c++ - 2个 vector 的和值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28607912/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com