如果您可以链接到另一个库,我建议使用boost::date_time。
看来您想从午夜(纪元)开始以秒为单位获取当前日期,然后将雷达时间添加到其中,然后将总和转换回日期时间,并将其转换为字符串。
使用 boost 将帮助您:
因为您将拥有时间间隔和持续时间等概念供您使用。您可以使用类似的东西(来自 boost 示例):
ptime t4(date(2002,May,31), hours(20)); //4 hours b/f midnight NY time
ptime t5 = us_eastern::local_to_utc(t4);
std::cout << to_simple_string(t4) << " in New York is "
<< to_simple_string(t5) << " UTC time "
<< std::endl;
Run Code Online (Sandbox Code Playgroud)
如果您想手动计算漂移,您可以轻松地进行时间数学计算,类似于这样的结构:
ptime t2 = t1 - hours(5)- minutes(4)- seconds(2)- millisec(1);
Run Code Online (Sandbox Code Playgroud)