第一种:使用C提供的time函数计算程序执行的间隔
int main()
{
//第一种:使用C提供的time函数计算程序执行的间隔
time_t start = std::time(NULL);
std::this_thread::sleep_for(std::chrono::duration<double>(10000));
time_t end = std::time(NULL);
double elapse = end - start;
std::cout << "执行的时间为:" << elapse << std::endl;
return 0;
}
第二种:使用boost提供的timer 计算程序执行的间隔
boost::timer 本质调用的是std::clock()函数
int main()
{
//第二种使用boost提供的timer 计算程序执行的间隔
//boost::timer 本质调用的是std::clock()函数
boost::timer t;
std::this_thread::sleep_for(std::chrono::duration<double>(10000));
double elapse = t.elapsed();
std::cout << "执行的时间为:" << elapse << std::endl;
return 0;
}
第三种使用C++11的新特性 std::chrono::high_resolution_clock计算程序执行的间隔
int main()
{
//第三种使用C++11的新特性 std::chrono::high_resolution_clock计算程序执行的间隔
auto start = std::chrono::high_resolution_clock::now();
std::this_thread::sleep_for(std::chrono::duration<double>(10000));
auto end = std::chrono::high_resolution_clock::now();
auto delta = std::chrono::duration_cast<std::chrono::milliseconds>(end - start);
std::cout << "执行的时间为:" << delta.count() << std::endl;
return 0;
}