c++ - 如何在插入过程中更改插入的值?
问题描述
我想将值从 vector 插入b
到 vector a
,并在插入期间将值乘以 -1。目前我只是插入元素,然后将它们乘以 -1:
a.insert(std::end(a), std::begin(b), std::end(b));
// ...
b
在不修改原始向量的情况下,如何在插入过程中已经获得负值?
我想达到的目标:
old a = {2,3,4}
b = {3,4,5}
a = {2,3,4,-3,-4,-5}
解决方案
你可以std::transform
这样使用:
#include <algorithm>
std::transform(std::cbegin(b), std::cend(b), std::back_inserter(a), std::negate<>());
推荐阅读
- interrupt-handling - xIE、xPIE 和 xPP 如何处理 RISC-V 特权中的陷阱和中断?
- angular - stylePreprocessorOptions 在 Angular 8 中不起作用
- javascript - Javascript 中的 clientX、pageX、screenX、offsetX、offsetLeft、movementX
- solace - 我们可以将主题附加到临时队列中吗?
- ngx-bootstrap - 在本地构建 ngx-bootstrap
- oracle - 如何在 PL/SQL 中使用多列遍历 dict 以从中获取值并将它们注入查询中的 where 语句
- android - Android:如何在材质工具栏中更改后退按钮的颜色、字体系列和标题的文本大小?
- c# - 比较属性在发布时失败
- excel - 在一行代码中选择所有对象
- machine-learning - 在一个分类变量中处理(过多)类的最佳方法