c++参数中的typedef函数
C++ typedef function in argument
我有一个函数,声明方式如下:
func(int n,double *xk, double (*f)(int x));
我想把它赋给一个词,比如typedef int (*func_t)(int, *double, ...);
。我知道如何赋值函数,但不明白如何在参数中描述函数
你可以做
typedef double (*FuncPtr)(int x);
int func(int n,double *xk, FuncPtr f);
typedef int (*func_t)(int,double*,FuncPtr);
一步一步来减少不必要的混乱和杂乱。
typedef int (*func)(int, double*, double (*)(int));
假设函数声明如下:
int func(int n, double *xk, double (*f)(int x)) {
// ...
}
则指向该函数的指针的类型定义如下:
typedef int (*funcPointer)(int, double *, int, int, double (*)(int));
//用法:
funcPointer ptrName = func;
假设你想把这个ptrName给一个叫做doThis()的函数:
int doThis (funcPointer ptrName) {
return 0;
}
那么你可以直接使用:
int y = doThis(ptrName);
祝你好运!div =) 相关文章:
- 类中的 Typedef 函数
- 为什么一次包装 typedef 函数签名与原始签名不匹配
- C++ typedef 函数指针,并在一个语句中声明一个指针
- 将一个 typedef 函数指向另一个类中的另一个函数
- Typedef 函数与函数指针
- 如何在 C/C++ 中将 typedef 函数作为参数传递
- 是无限的Typedef函数指针继承
- 带有功能指针的Typedef:函数不存在
- typedef 函数不是类型名称
- 推导 typedef'd 函数指针的模板参数
- C/C++:使用 typedef'd 函数指针来 *声明* 函数
- 带有 void * 指针的 Typedef 函数
- 带有类 - 非静态成员调用的 typedef 函数声明
- 在 C++ 中将 typedef 函数从标头实现到源文件中
- 我可以在typedef函数签名中放入throw声明吗
- 对c++中类内typedef函数的怀疑
- typedef 函数在 C 语言中的用法
- 递归typedef函数定义:std::函数返回自己的类型
- typedef函数指针,在定义ClassName之前接受参数ClassName*
- 使用typedef函数指针的类型不完整