1
4

1 回答 1

1

我认为 std::copy 会有相当不错的性能,尤其是我在cppreference.com上看到的一个注释

在实践中,如果值类型是 TriviallyCopyable,则 std::copy 的实现会避免多次赋值并使用批量复制函数,例如 std::memmove

如果类型需要转换,那么我会这样做:

class MemRef
{
  public:
    MemRef(char * astr) : ptr_( astr), size_( strlen( astr)) { }
...
} ;

vecMem.insert(vecMem.end(), cstrVec.begin(), cstrVec.end()) ;

这允许 vecMem 一次性计算出需要保留多少空间。

于 2013-12-04T03:20:51.413 回答