我想要得到这样的代码:
struct Order_t {
time_point<system_clock, microseconds> order_time;
// some other fileds
};
template<typename Dura>
void onTimer( time_point<system_clock, Dura> tp_now ) {
auto tp0 = time_point_cast<Order_t::order_time::duration>( tp_now );
// some other codes...
};
但是这些无法编译。事实上,我需要声明一个与 Order_t::order_time
类型相同的变量,但这里没有该类型的 var。
最佳答案
要获取嵌套类型 (::duration
),您需要一个类型,而不是变量。因此,应该是
auto tp0 = time_point_cast<decltype(Order_t::order_time)::duration>(tp_now);
关于c++ - 如何声明某个结构的成员 var 类型的 var?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59375956/