我正在回顾 boost::asio 的来源,突然碰到一个奇怪的 C/C++ 语法
template <typename Handler>
auto zero_arg_handler_test(Handler* h)
-> decltype(
sizeof(Handler(*static_cast<const Handler*>(h))),
((*h)()),
char(0));
我理解提供给 decltype 的逗号分隔表达式的顺序评估,尽管 -> 表示法的外观令人困惑。知道它是什么吗?谢谢。