0

我有一个用 C 语言编写的哈希表的自定义实现,用于我正在开发的应用程序。现在我想在 swig 中为它创建一个包装器,以便我可以将它们映射到 Python 中的“dict”等原生类型。我希望能够编写一个可用于 Perl 和 Python 的单一接口文件。首先我想知道这是否可能,或者我应该为每个 Python 和 Perl 单独做吗?

4

1 回答 1

0

一个实现文件是可能的。根据实现的复杂性,它可以很简单:

%module my_hash

%inline %{
#include "my_hash.h"
%}

并生成接口代码:

swig -python my_hash.i
swig -perl my_hash.i

如果您必须编写任何自定义类型映射,则可能必须在接口定义中使用#ifdef SWIGPYTHON#ifdef SWIGPERL指定特定于语言的代码。

于 2013-05-17T05:16:29.453 回答