ctypes使用:访问具有类名和范围解析运算符的成员函数

时间:2015-01-18 03:52:24

标签: python c++ ctypes

我有一个C ++应用程序需要使用ctypes的Python包装器 有许多类,它们的成员函数前面是类 名称和范围解析范围“::”。

有人知道如何使用ctypes访问其成员函数。

例如,X类及其成员函数之一是

extern "C" {
  void X::init(char*) {
    .....
  }
}

创建共享库之后,如何在ctypes中调用X :: init(...)?

这是我在下面的python片段中的意思,它给了我一些类似“未定义的符号init()”的错误,因为我需要指定类X但不知道如何。

s = 'name'
lib = CDLL('./test.so')
lib.init.argtypes = c_char_p
lib.init.restype = None
lib.init(s)

感谢。

0 个答案:

没有答案