今天我要说的函数指针是针对C++这门语言的,每天坚持学习和整理一个知识点,希望你也能成为大牛!
从下面这一段代码来理解函数指针(代码来源,李宁老师的C++视频):
#include <iostream>
using namespace std;
int factorial(int n);
typedef int (*JC)(int n);
int main(int argc, const char * argv[])
{
int (*p_factorial)(int n) = factorial; // 函数指针 必须初始化函数指针
cout << "10的阶乘:" << p_factorial(10) << endl;
JC jc = p_factorial;
// cout << (*jc)(6) << endl;
cout << jc(6) << endl;
return 0;
}
// 计算阶乘
int factorial(int n)
{
if(n == 0 || n == 1)
{
return 1;
}
else
{
return factorial(n - 1) * n;
}
}