void (*visit) (BinTreeNode
用左-右-左读法:
1 visit ,往左读,是 *,于是 visit 是指针
2 再接着往右读,是 )
3 再往左,是 (
4 再往右是 (BinTreeNode
5 再往左读,是 void,函数返回值
所以,visit 是一个指针,指向一个函数,函数只有一个 BinTreeNode
所有复杂的声明都可以用左-右-左来读其意义,也只有这样读。
void (*visit) (BinTreeNode
举例说明:
函数指针
void (*test)(int a);
这是一个函数指针,返回值类型为void,参数类型为int
如果理解了这个
那么
void (*visit) (BinTreeNode
只不过参数类型是BinTreeNode
BinTreeNode
这个是指向函数的指针类型,这个函数的返回值为空,参数是BinTreeNode