一旦定义函数指针,使用前给它赋值一个函数地址
像数组 arr[10],如果不带方括号,arr是地址
func()地址是没有参数列表 func函数产生的
&func() 也可表示函数 的地址
为了调用函数,可间接引用指针
声明相同的方法地址相同
定义了指向函数的指针fp之后,用fp=func使fp 获得函数 func()的地址
函数名缺少参数列表
第二种情况显示定义和初始化
输出
func() called...
func() called...
像数组 arr[10],如果不带方括号,arr是地址
func()地址是没有参数列表 func函数产生的
&func() 也可表示函数 的地址
为了调用函数,可间接引用指针
声明相同的方法地址相同
C和C++ 力图让引用看上去与使用引用的方法一样
//: C03:PointerToFunction.cpp
// From Thinking in C++, 2nd Edition
// Available at http://www.BruceEckel.com
// (c) Bruce Eckel 2000
// Copyright notice in Copyright.txt
// Defining and using a pointer to a function
#include <iostream>
using namespace std;
void func() {
cout << "func() called..." << endl;
}
int main() {
void (*fp)(); // Define a function pointer
fp = func; // Initialize it
(*fp)(); // Dereferencing calls the function
void (*fp2)() = func; // Define and initialize
(*fp2)();
getchar();
} ///:~
定义和使用指向函数的指针
定义了指向函数的指针fp之后,用fp=func使fp 获得函数 func()的地址
函数名缺少参数列表
第二种情况显示定义和初始化
输出
func() called...
func() called...