我应该在使用std :: back_inserter时保留内存

时间:2013-10-25 07:29:07

标签: c++ std c++98

使用背面时是否需要保留内存:插入器?

d.reserve(s.size())
std::copy (s.begin(),s.end(),back_inserter(d));

2 个答案:

答案 0 :(得分:7)

使用std::back_inserter时,无需为容器保留内存。但是,如果您事先知道要插入的元素数量并希望防止重复分配,则可以保留内存。

答案 1 :(得分:0)

你不必。但是,如果此代码段运行频繁,您可以考虑保留内存以提高性能。