相关疑难解决方法(0)

如何使用 STL 算法将 std::vector<T> 转换为 std::vector<std::pair<T,T>> 对的向量?

我有一个整数向量:

std::vector<int> values = {1,2,3,4,5,6,7,8,9,10};
Run Code Online (Sandbox Code Playgroud)

鉴于这values.size()将永远是均匀的。

我只是想将相邻元素转换为一对,如下所示:

std::vector<std::pair<int,int>> values = { {1,2}, {3,4} , {5,6}, {7,8} ,{9,10} };
Run Code Online (Sandbox Code Playgroud)

即,两个相邻的元件连接成一对。

我可以使用什么STL算法来轻松实现这一点?是否可以通过一些标准算法来实现这一点?

当然,我可以轻松地编写一个老式的索引for循环来实现这一点。但我想知道使用基于范围的for循环或任何其他 STL 算法(例如std::transform等)最简单的解决方案是什么样的。

c++ stl stl-algorithm

23
推荐指数
4
解决办法
3254
查看次数

标签 统计

c++ ×1

stl ×1

stl-algorithm ×1