C++11 中 std::chrono::high_resolution_clock::now() 的类型是什么?

What is the type of std::chrono::high_resolution_clock::now() in C++11?

我需要在 class 中声明以下变量:

auto gameStartClock = std::chrono::high_resolution_clock::now();

但是,每当我尝试这样做时,我都会从 gcc 5.1.0(启用 C++11)收到此错误消息:

<file>.hpp:274: error: non-static data member declared 'auto'
auto gameStartClock = std::chrono::high_resolution_clock::now();                                                               ^
non-static data member declared 'auto'

所以我猜我将 auto 替换为正确的类型后错误就会消失。但是,我在那里找到的每个关于 ::now() 的例子都使用 auto.

它的类型是什么?

注意:我尝试 std::chrono::time_point 使用几个模板,但没有成功。不确定哪些是正确的。

类型是std::chrono::time_point<std::chrono::high_resolution_clock>

来自手册:http://en.cppreference.com/w/cpp/chrono/high_resolution_clock/now

编辑: 正如 Lightness Races in Orbit 在评论中指出的,您还可以使用 std::chrono::high_resolution_clock::time_point