使用两种定义方式:
// 使用typedef定义函数指针
typedef int (*callback) (int a);
// 使用using定义函数指针
using callback = int (*) (int a);
2.函数指针的简单使用
作为形参传递给函数
#include
using namespace std;
using callback = int (*) (int a); //定义函数指针,返回值为 int,函数的参数为 int a
int test1(int a)
{
return 2*a;
}
int test2(callback fun,int a)
{
return a+fun(a);
}
int main()
{
callback f1=test1;
int a=f1(10);
cout<<"a:"<<a<<endl;// 输出为 a:20
int b=test2(test1,10);
cout<<"b:"<<b<<endl;// 输出为 b:30
}
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)