我怎么去
std::vector<std::pair<int, int>>
只是
std::vector<std::vector<int>>
?有一种真正有效的方法吗?
答案 0 :(得分:2)
我会做这样的事情:
vector?
更新:为避免复制,您可以将向量移动到新的向量#include <vector>
#include <utility>
int main()
{
//Vector of pairs
std::vector<std::pair<int, int>> pairs = { {1,1},{2,2} };
//New vector
std::vector<std::vector<int>> vec;
//Allocate memory for new vector
vec.reserve(pairs.size());
for (auto &p : pairs)
{
//Create vector with first and second element of pair
std::vector<int> v = { p.first, p.second };
vec.push_back(v);
}
return 0;
}
中。