如何使用新的 1 using
关键字来声明函数类型?
我知道如何使用它来声明函数指针类型。例如,以下typedef:
typedef int (*int_to_int)(int);
似乎等同于以下使用声明:
using int_to_int = int (*)(int);
如何对以下非指针typedef执行相同的操作:
typedef int (int_to_intf)(int);
我的"删除typedef名称并将其放在using
"之后算法不起作用:
using int_to_intf_u = int ()(int); // nope, doesn't compile
1 至少对于像我这样仍然定义" new" as"在C ++ 11"。
中引入答案 0 :(得分:5)
它只是int(int)
。要获取抽象声明符,只需从实际声明中删除变量名称即可。您将声明int f(int);
,因此抽象声明符应为int(int)
。