我正在我的代码中使用一个c
库。c++
他们API
要求我传递具有给定签名的某个函数指针。假设它类似于以下内容:
typedef int (*api_fun_t)(int);
我想要做的是传递依赖于在运行时确定的某些参数的函数指针。最初我想定义如下内容:
api_fun_t my_specialized_fun(int param){
int fun(int x){
// decide what to do based on param
}
return fun;
}
但问题c++
不允许嵌套函数定义。接下来我想我可以通过如下模板来实现这一点
template <int param>
fun (int x){
//decide what to do based on param
}
有没有其他不涉及全局和/或静态变量的方法?