函數指針必須包含要調用的函數的內存地址,為了工作正確,指針還必須包含其他信息,即指針所指向的函數的參數列表中的參數類型以及返回類型。因此,在聲明函數指針時,必須指定該指針可以指向的函數的參數類型和返回類型,以及指針名。
函數指針的一般形式如下:
返回類型(*指針明名)(參數類型列表);
注意:指針名上的括號是必不可少的,否則*就會與返回類型結合,就成了一個函數原型了。
#includeusing std::cout; using std::endl; //函數聲明 long sum(long a,long b); long product(long a,long b); int main(int argc,char* argv[]){ //函數指針聲明 long (*pfun)(long ,long)=0; //指向product函數 pfun=product; cout<