使用SWIG包装关键字名称的C ++模板方法
我使用SWIG封装了一些C ++代码来生成Python代码。 C ++类具有as
定义的模板方法:
class Array {
public:
template <typename T> std::vector<T> as<T>();
...
}
在我的SWIG接口文件中,我已经包装了这个功能:
%template(fdata) Array::as<float>();
%template(idata) Array::as<int>();
...
这在SWIG 3.0.0中工作正常,但是当我尝试在3.0.12等更新的版本中编译时,我收到了一堆警告:
Warning 314: 'as' is a python keyword, renaming to '_as'
Warning 503: Can't wrap '_as< float >' unless renamed to a valid identifier.
并且不会生成fdata
, idata
等方法。
我不知道,因为这有什么不好as
方法仅限于C ++代码,我从来没有产生as
在Python端方法。
任何帮助表示赞赏。
链接地址: http://www.djcxy.com/p/48341.html上一篇: Wrapping C++ template method with keyword name using SWIG