下面用一个简单的小例子来说明,C++的源代码如下:(这里用到了C++11的特性)
//kmodel.hpp
#ifndef KMODEL_H
#define KMODEL_H
#include
#include
#include
#include
class KModel{
public:
KModel(){
umap["123"]=1024;
umap["name"]=2048;
}
std::unordered_map umap;
void say(std::string v);
};
#endif
//kmodel.cpp
#include "kmodel.hpp"
using namespace std;
void KModel::say(string v){
cout<
}
Swig下载地址,目前使用的是Swig-3.0.12
1.编写转换规则kmodel.i
%module kmodel
%include "std_string.i"
%{ #include "kmodel.hpp" %}
%include "kmodel.hpp"
%include “kmodel.hpp”,表示类或函数的声明,可以直接添加进来。另外需要添加%include “std_string.i”,是因为say方法的参数是string类型,所以要添加string的头文件,若不添加会出现下面的