C++中返回指向函数的指针示例
短信预约 -IT技能 免费直播动态提醒
在C++中,函数的形参可以是指向函数的指针,函数也可以返回函数的指针。
例如:
int (*ff(int)) (int *,int);表示:ff(int)是一个函数,带有一个int型的形参,该函数返回int (*) (int *,int),它是一个指向函数的指针,所指向的函数返回int型并带有两个分别是Int*和int型的形参。
使用typedef可使得定义更加易懂:
typedef int (*PF) (int *,int);
PF ff(int);
下面给出一个例子:
复制代码 代码如下:
#include<iostream>
using namespace std;
void fff(int *i,int j)
{
cout<<"fff"<<endl;
}
void (*f(int))(int* pi,int i)
{
cout<<"cheng"<<endl;
return fff;
}
typedef void (*((*pf)(int)))(int*,int);
int main()
{
pf p;
p=f;
int i;
int *ip;
p(i);
return 0;
}
输出结果:
cheng
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341