首页 > 编程语言 >C++ string 性能测试

C++ string 性能测试

时间:2022-09-27 16:58:01浏览次数:47  
标签:end string C++ start result 测试 time test include

1、使用 “+=” 性能对比

代码如下

#include <stdio.h>
#include <stdlib.h>
#include <iostream>
#include <string>
#include<time.h>

using namespace std;

int main() {
    struct timespec time_start = { 0, 0 }, time_end = { 0, 0 };
    clock_gettime(CLOCK_REALTIME, &time_start);
    string result;
    int num = 10000;
    while (num--) {
//        result += "test";
        result = result + "test";
    }
    clock_gettime(CLOCK_REALTIME, &time_end);

    int costtime = ((time_end.tv_sec-time_start.tv_sec)*1000000+(time_end.tv_nsec-time_start.tv_nsec)/1000);
     
    cout << costtime << endl;
    return 0;
};

使用mbp测试结论如下:
使用 result += "test" 耗时为167us;使用 result = result + "test" 耗时为 8953us。未使用的是使用“+=”的50倍。因此在涉及到字符串拼接的时候建议使用“+=”。

标签:end,string,C++,start,result,测试,time,test,include
From: https://www.cnblogs.com/xiaohaigegede/p/16735094.html

相关文章