标准库提供了一些功能,我们可以利用这些功能完成与时间有关的任务。例如,下面这段程序实现了最基本的计时:
using namespace std::chrono; //见35.2节auto t0=high_resolution_clock::now();do_work();auto t1=high_resolution_clock::now();cout<<duration_cast<milliseconds>(t1-t0).count()<<"msec\n";
系统时钟返回一个time_point类型的值(时间点),两个time_point相减的结果是 duration(时间段)。不同的时钟得到的时间单位各有不同(这里用到的时钟单位是nanoseconds),所以在实际使用时,最好把 duration统一转换成一个公认的单位。在上面的代码中, duration_cast负责完成这一任务。
处理时间的标准库功能定义在<chrono>头文件中,属于子名字空间std:chrono。
判断程序“效率”最有效的办法是统计程序运行的时间,仅靠猜测很难做出正确的判断。
