我有一个带有 std::pair 类型元素的 std::vector。使用某种算法,我返回两个迭代器(范围),因此我想获取该范围内的所有元素并将该对的第一个条目复制到另一个向量
std::vector< pair<double, int> > data;
std::vector<double> data2;
std::vector< pair<double, int> >::iterator it1, it2;
for (;it1!=it2; it1++)
{
data2.push_back(it1->first);
}
使用循环可以做到这一点,但我想知道是否有一个简单的 stl 算法可以做到这一点。由于数据量非常大,并且上述操作会重复多次,因此使用循环非常慢。