函数名称与函数指针存在隐式转换,所以以下代码
void decl(int) {}
void function(int);
using function_ptr = void (*)(int);
using function_ref = void (&)(int);
using function_decl = void (int);
function_ptr ptr = function; //函数隐式转换到指针 1
function_ref ref = function; //函数的引用 2
function_decl decl = function//错误,decl为右值 3 改表达式为函数声明
function_decl decl; //ok 函数void decl(int)声明
decl(1); //若函数decl以及实现 ok
函数指针和函数名可以直接调用函数调用运算符();



