要比较C++中str.erase()的效率,可以编写一个简单的基准测试程序来测试不同的用例。
以下是一个示例程序,它使用C++的chrono库来测量str.erase()的执行时间:
#include
#include
#include
int main() {
std::string str = "Hello, World!";
// 测量str.erase()的执行时间
auto start = std::chrono::high_resolution_clock::now();
// 在这里执行 str.erase() 操作
auto end = std::chrono::high_resolution_clock::now();
auto duration = std::chrono::duration_cast(end - start).count();
std::cout << "str.erase() 执行时间: " << duration << " 微秒" << std::endl;
return 0;
}
在这个示例中,你需要在// 在这里执行 str.erase() 操作
这行代码处执行str.erase()
操作,然后测量其执行时间。
你可以使用不同的用例来测试str.erase()
的效率,比如:
// 删除字符串的第一个字符
str.erase(0, 1);
// 删除字符串的最后一个字符
str.erase(str.length() - 1, 1);
// 删除字符串的前半部分
str.erase(0, str.length() / 2);
// 删除字符串的后半部分
str.erase(str.length() / 2, str.length() / 2);
你可以根据自己的需求修改这些用例。然后运行程序,观察输出的执行时间,以比较不同用例下str.erase()
的效率。
上一篇:比较C++中的字符串指针
下一篇:比较C/C++中指针分配的性能