Cryptic C++"thing"(函数指针)

3 c++ pointers function

C++中的这种语法是什么?有人能指出我的技术术语,所以我可以看到我的文字中是否有任何内容?

起初我以为它是一个原型,然后把=(*fn)扔掉......

这是我的例子:

void (*fn) (int&,int&) = x;
Run Code Online (Sandbox Code Playgroud)

ken*_*ytm 14

它可以重写为

typedef void (*T) (int&, int&);
T fn = x;
Run Code Online (Sandbox Code Playgroud)

第二个陈述是显而易见的,应该已经解决了这个= x;问题.在第一个语句中,我们将T其作为类型的同义词void(*)(int&, int&),这意味着:

  • 指向函数的指针((*…))
  • 回国 void
  • 并采取两个论点:int&, int&.


Bil*_*eal 9

这是一个带有两个int引用参数的函数的函数指针,它不返回任何内容.调用函数指针fn并为其分配值x.