带有SWIG的Python C ++扩展 - 通过导入模块调用函数

时间:2012-04-07 07:41:31

标签: c++ python function swig init

如何编写C ++库并使用SWIG将其转换为python扩展,并通过导入模块import module,它将自动调用一个初始化某些全局变量的函数。

我曾尝试将该函数重命名为__init__(),但是当我导入该模块时,它不会被调用。

我该怎么办?

1 个答案:

答案 0 :(得分:2)

将代码放在SWIG接口文件的init部分中:

%init %{
    my_init_function();
%}

此代码将添加到生成的swig包装器中,并在导入模块时调用。

SWIG 2.0第5.6.2节:Code Insertion Blocks