【发布时间】:2015-06-03 00:43:31
【问题描述】:
我有一个主要用作 boost::shared_ptr 的类。我正在尝试包装一些重载函数,并且需要添加一个类型检查规则以使 Python 端的某些功能可用。
当我告诉 SWIG 为我的类使用共享指针时,SWIG 包装器构建和编译正常。
%shared_ptr(mynamespace::MyClass)
然而,一旦我添加了类型检查规则,SWIG 就会告诉我没有提供类型检查规则!这是我的 SWIG 包装代码:
%shared_ptr(mynamespace::MyClass)
%typemap(typecheck) boost::shared_ptr<mynamespace::MyClass> {
// always OK, dummy for testing.
$1 = SWIG_IsOK(1);
}
我得到的错误信息是:
/scr/dbw/bld/include/header.h:509: 警告 467: 重载方法 mynamespace::get_contacts(boost::shared_ptr) 不支持('boost: 没有类型检查规则: :shared_ptr')。
【问题讨论】: