美文网首页
C++ std::string 在一个字符串前插入一个字符串几种

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

作者: 一只肥豚鼠 | 来源:发表于2019-02-15 19:18 被阅读3次

    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

    相关文章

      网友评论

          本文标题:C++ std::string 在一个字符串前插入一个字符串几种

          本文链接:https://www.haomeiwen.com/subject/bdwmeqtx.html