C++性能测试(一)
写在前面
测试环境:
操作系统:window11
编译器:msvc14
备注:
建议有c++基础的再来看这篇博客,因为我不会解释c++的一些函数或者方法(因为我可能也是现查的),当然有什么问题可以评论区提问,我会的就回答不会的可以搜索。
该测试结果仅是我在学习c++时为了测试一些函数或者方法而得到的,结果并不严谨也不具有说服力。我的目的也不是为了说清楚c++的性能问题,我不对测试的结果做任何结论但是会以我所知道的东西对这些结果做简单解释,所以这些测试结果仅供大家参考也欢迎大家批评指正。
测试方式
int main()
{
steady_clock::time_point t1;
steady_clock::time_point t2;
t1 = steady_clock::now();
f1();
t2 = steady_clock::now();
std::cout << "f1() take " << duration_cast<microseconds>(t2 - t1).count() << " microsecond." << endl;
return 0;
}
测试结果(以下结果时间单位均为微秒)
vector初始化
void f1() {
vector<int> v(MAX_SIZE);
}
void f2() {
vector<int> v(MAX_SIZE, 0);
}
void f3() {
vector<int> v(MAX_SIZE, 99);
}
void f4() {
vector<int> v(MAX_SIZE);
for (int i = 0; i < MAX_SIZE; ++i