Item 14. 函数指针(Function Pointers)

Item 14. Function Pointers

函数指针的声明:
 void (*fp)(int); //括号不能省略,去掉则为返回类型为void*

使用:
 1、当初始化或赋值函数指针A的地址给函数指针B,无需显式的取函数的地址,编译器会为你做:
   extern void h( int );
   fp = h; // OK, 指向 h
   fp = &h; // OK
  2、当调用函数指针时,也无需提领,编译器会为你做:
   (*fp)(12); // OK 显式提领
   fp(12);    // OK 隐式提领
  3、没有通用的函数指针可以指向任意类型的函数
     非静态成员函数的地址不是指针,因此无法把函数指针指向它
  4、函数指针经常用于回调技术中
  5、当指向inline函数时,inline修饰符已经失效了

posted on 2005-04-12 10:10  张大大123  阅读(133)  评论(0编辑  收藏  举报

导航