将矢量复制到STL列表的最佳方法?

kal*_*kal 41 c++ stl

使用迭代器迭代向量并将最复制的复制方法复制到列表中.有什么建议?

小智 86

为什么要迭代而不使用标准复制算法?

std::copy( vector.begin(), vector.end(), std::back_inserter( list ) );
Run Code Online (Sandbox Code Playgroud)


Fre*_*son 60

如果你正在创建一个新列表,你可以利用一个带开始和结束迭代器的构造函数:

std::list<SomeType> myList(v.begin(), v.end());
Run Code Online (Sandbox Code Playgroud)

如果您想要附加现有列表,Kasprzol的答案是完美的.


Den*_*nis 6

list.assign(vector.begin(), vector.end());
Run Code Online (Sandbox Code Playgroud)