C++ std::string 在一个字符串前插入一个字符串几种方式

1、直接使用字符串相加

std::string a = "hello";
std::string b = "hello";
for(int i = 0; i < 100; ++i)
{
    a = b + a;
}

2、使用insert函数

std::string a = "hello";
for(int i = 0; i < 100; ++i)
{
    a.insert(0, "hello");
}

比较:通过Quick C++ Benchmarks 可得到结果

static void StringCreation(benchmark::State& state) {
  // Code inside this loop is measured repeatedly
  std::string x = "hello";
  for (auto _ : state) {
    x.insert(0,"hello");
    // Make sure the variable is not optimized away by compiler
    benchmark::DoNotOptimize(x);
  }
}
// Register the function as a benchmark
BENCHMARK(StringCreation);

static void StringCopy(benchmark::State& state) {
  // Code before the loop is not measured
  std::string x = "hello";
  for (auto _ : state) {
    x = "hello" + x;
  }
}
BENCHMARK(StringCopy);

image
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容