我想使用SWIG将向量的C ++向量包装到Python代码中。
是否可以包装这种类型的向量载体?
std::vector<std::vector<MyClass*>>;
在界面文件MyApplication.i
中,我添加了这些行:
%include "std_vector.i"
%{
#include <vector>
%}
namespace std {
%template(VectorOfStructVector) vector<vector<MyClass*>>;
}
但是,我在执行SWIG时遇到错误。我能够包装这种类型(使用对向量的引用):
std::vector<std::vector<MyClass*>*>;
但是,它无法正常工作,我无法访问这些项目。这就是为什么我对这种类型感兴趣(没有参考):
std::vector<std::vector<MyClass*>>;
有什么想法吗?
答案 0 :(得分:3)
这是一个C ++解析问题吗?
std::vector<std::vector<MyClass*> >;
---Important space---------------^