c++ - 将 C++ 函数指针传递给 C 函数

标签 c++ c

<分区>

Possible Duplicate:
How can I pass a C++ member function to a C API as a parameter

您好,我有一个 C 函数类,期望回调如下: void fun_c(void * (*ptr)(void *)).

现在我想将 C++ 方法发送给 c 函数,谁能告诉我该怎么做:

class ClassA{
  method1(){
    func(ClassA::func);
  }
  void * func(void * arg){
  }
}

任何人都可以做到这一点。

最佳答案

您不能使用实例函数执行此操作,因为 C 代码将没有可用的实例,甚至不知道如何处理一个实例。您需要改用静态函数。

关于c++ - 将 C++ 函数指针传递给 C 函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7838504/

相关文章:

返回 void 的函数 g 可以返回 f() 吗? f 何时返回 void?

c - 针对动态/静态/增量数据的专用哈希表算法

c++ - "omp single"和 "omp task"如何提供并行性?

android - YUV (NV21) 到移动设备上的 BGR 转换( native 代码)

c - 使用指针 : program that checks if strings are in lexicographical order

c - c中的utils.h到底是什么?

c - va_start 警告 "second parameter of ' va_start ' not last named argument"

c++ - 是否有任何 C 或 C++ 编译器在定义宏中进行优化?

c++ - 编译时循环优化

C++ Tokenizer 复杂性与 strtok_r