据我了解,result_of_t
应该是一种类型,它将在表达式的评估结束时。decltype(&foo)
在下面的代码中产生了类型int (*)(int)
,但是(int)
外面的decltype
呢?
#include <type_traits>
int foo(int) {
return 0xdeadbeef;
}
int main()
{
using T = std::result_of_t<decltype(&foo)(int)>;
T t;
return 0;
}