返回引用类型的函数指针(c++)

#include<iostream>


int show(int a, int b){


return a + b;
}


int show2(int a, int b){


return a - b;
}




int ( *& test(int (*& pr)(int, int)))(int, int){//返回一个引用的函数指针
pr = show2;
return pr;
}






void main(){


int (*p)(int, int)(show);//首先定义一个函数的指针指向这个函数
int (*& pr)(int,int)(p);//给p在取一个别名


std::cout << p(1, 2) << std::endl;//首先测试一下第一个


pr = test(pr);//对函数指针的只想发生了修改




std::cout << p(1, 2) << std::endl;//再一次打印输出一下


system("pause");


}

猜你喜欢

转载自blog.csdn.net/qq_37353105/article/details/78118794