c++ 标准库duration

Duration的默认单位是秒, 但是他的个数可以不是整数, 而是–ratio分数

Duration的默认单位是秒, 但是他的个数可以不是整数, 而是–ratio分数

比如:

1
2
3
std::chrono::duration<int> twentySecends(20);
std::chrono::duration<double, std::ratio<60>> halfAMinute(0.5);//单位60s
std::chrono::duration<long, std::ratio<1, 1000>> oneMillisend(1);//单位1ms

另外chrono中也提供了一些预定义:比如millisends, hours等:

1
2
3
4
5
6
7
8
	// duration TYPES
using nanoseconds = duration<long long, nano>;
using microseconds = duration<long long, micro>;
using milliseconds = duration<long long, milli>;
using seconds = duration<long long>;
using minutes = duration<int, ratio<60>>;
using hours = duration<int, ratio<3600>>;
//nano milli是ratio中的一些定义.

c++标准库第144页