【发布时间】:2020-02-03 19:44:49
【问题描述】:
我有一个函数,它接受第二个作为参数并返回 HH:MM:SS 格式的字符串。没有std::chrono,我可以这样实现:
string myclass::ElapsedTime(long secs) {
uint32_t hh = secs / 3600;
uint32_t mm = (secs % 3600) / 60;
uint32_t ss = (secs % 3600) % 60;
char timestring[9];
sprintf(timestring, "%02d:%02d:%02d", hh,mm,ss);
return string(timestring);
}
使用std::chrono,我可以将参数转换为std::chrono::seconds sec {seconds};。
但是我怎样才能将它转换为具有格式的字符串呢? 我在 https://youtu.be/P32hvk8b13M 中看到了 Howard Hinnant 的精彩视频教程。不幸的是,没有这个案例的例子。
【问题讨论】: