[英]How to wrap final tempate class from C++ using swig?
我正在尝试将标记为final的模板从C ++包装为C#,但没有成功。 Swig会说“未定义模板'Test'”
如果我删除了final关键字但标头不在我的控制之下,则该方法有效。
%module SwigTest
template <typename T>
class Test final
{
public:
T a;
};
%template(TestBool) Test <bool>;
最终效果是否会以任何方式影响名称? 我试过了
%template(TestBool) Test final <bool>;
和类似的组合,但没有成功。
看起来SWIG final
还不了解。 不过,您可以使用SWIG中的预处理器来解决此问题:
%module SwigTest
#define final
template <typename T>
class Test final
{
public:
T a;
};
%template(TestBool) Test <bool>;
这将不会产生负面影响。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.