C ++ 11:将time_point增加一秒

时间:2016-04-21 06:18:22

标签: c++11 clock chrono

如果我有

std::chrono::steady_clock::time_point t1 = std::chrono::steady_clock::now();

变量,如何定义另一个time_point变量t2,使其在t1之后表示一秒的时间点?

auto t2 = t1 + "1s"这样的东西。我应该用什么来代替“1s”?

1 个答案:

答案 0 :(得分:8)

如果你正在使用C ++ 14(VS-2015,或-std=c++14使用gcc或clang),那么:

using namespace std::chrono_literals;
auto t2 = t1 + 1s;

如果您使用的是C ++ 11:

using namespace std::chrono;
auto t2 = t1 + seconds{1};

如果您不想复制,但在t1本身添加1秒,+=也可以:

t1 += 1s;
t1 += seconds{1};