在它的cppreference-page上std::declval
显示以下内容:
返回值
无法调用,因此永远不会返回值。
这是什么意思?当我们使用它时,我们肯定会调用它吗?
struct Foo { int func(){} };
decltype(std::declval<Foo>().func()) integer;
/* ^
| */