我正在尝试编写一个函数,允许用户指定一个chrono::duration
likechrono::seconds
并返回chrono::duration::count
.
我可以使用以下模板函数来做到这一点:
template<typename D, typename Rep>
Rep getTimeSinceStart(){
return chrono::duration_cast<D>(chrono::steady_clock::now() - start).count();
};
要调用此函数,我必须指定Rep
. 例如,假设我有一个名为 的对象timer
,如果Rep
是long long
:
long long sinceStart = timer.getTimeSinceStart<chrono::seconds, long long>();
但是,有没有办法只指定chrono::duration
?
我在想类似的事情:
template<typename D>
D.rep getTimeSinceStart(){
return chrono::duration_cast<D>(chrono::steady_clock::now() - start).count();
};
这样我就可以打电话了:
long long sinceStart = timer.getTimeSinceStart<chrono::seconds>();