函数指针
函数指针
##1 最简单的一个函数指针
下面:func是一个函数指针,指向一个输入参数为int,返回值为int的函数。
int (*int_function_ptr)(int);
示例(C++):
#include <iostream>
int int_function(int a) { return 12; }
int main(int argc, char *argv[]) {
int (*int_function_ptr)(int) = &int_function;
std::cout << int_function_ptr(2) << std::endl;
return 0;
}
2 typedef一个函数指针类型
下面:string_function_ptr_type是一个函数指针类型。
typedef std::string (*string_function_ptr_type)(int);
使用示例(C++):
#include <iostream>
#include <string>
typedef std::string (*string_function_ptr_type)(int);
std::string string_function(int b) { return "string"; }
int main(int argc, char *argv[]) {
string_function_ptr_type string_function_ptr = &string_function;
std::cout << string_function_ptr(3) << std::endl;
return 0;
}