有效地将字节数组附加到字符串c ++

时间:2019-07-12 20:56:39

标签: c++ arrays memory

我正在处理几个字节数组(uint_8)块,并将它们附加到字符串(my_string)上。为了提高效率,我为字符串预留了足够多的字节

my_string.reserve(more_than_enough_bytes);

我正尝试附加每个块,如以下功能所示:

bool MyClass::AppendToMyString(uint_8* chunk, size_t chunk_num_bytes) {
  memcpy(const_cast<uint_8*>(my_string.data()), chunk, chunk_num_bytes);
  return true;
}

但是问题是memcpy不会更新my_string的大小。因此,下次调用此函数时,除了使用单独的变量之外,我不在最后一个元素所在的位置。有什么想法吗?

1 个答案:

答案 0 :(得分:1)

green有一个append方法可以解决这个问题。类似于:

std::string

Live demo