如何在 swig 中使用 typemap 转换 python 列表。例如 :
lst = [1.0,2.0,3.3] (Python list)
传递给
void print_arg(double *lst){} (c/c++ function)
我该如何为此编写 swig 接口文件。
一种方法是使用 SWIG 和 carrays 和 cpointer
示例代码是:
SWIG 接口
%include "carrays.i"
%array_class(double, doubleArray);
Python 模块
LEVEL = 3
thre = [1, 100, 10000]
a = example.doubleArray(LEVEL)
for i in xrange(LEVEL):
a[i] = thre[i]
gd=example.GradedDouble(LEVEL,a)
以上是我的工作示例...根据您的目的相应地更改代码...