无法正确地将std :: pair暴露给java绑定?

时间:2012-03-15 10:47:46

标签: java c++ binding swig

我正在使用swig为java中的c ++库生成绑定。

我的原生代码我有一对如下

std::pair<std::string,vector <int> >;

我想将它公开给java。但是当我看到我的wrap.cxx时,其形式为

SWIGTYPE_p_Ivectors.

我无法使用此swig手柄获取矢量。最终我无法进行任何矢量操作。

我还包括

%include <std_vector.i>

还创建了这样的模板

%template(Ivectors) vector<int>;

请尽快帮助我。

1 个答案:

答案 0 :(得分:3)

那里有多个模板。你已经有了:

%template(Ivectors) vector<int>;

您还需要:

%template(SVpair) std::pair<std::string,vector <int> >;