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");
}