gpt4 book ai didi

c++ - SWIG——如何忽略模板化 C++ 函数?

转载 作者:行者123 更新时间:2023-11-30 02:32:57 31 4
gpt4 key购买 nike

我有一个类似这样的 C++ 类:

namespace ns {
template<class T>
class Wrapper {
public:
bool operator==(const Wrapper<T>& rhs) const;
// Other methods
private:
T mData;
};
}

我想用 SWIG/Python 包装它,但我不想包含相等运算符。我尝试了各种方法:

%ignore ns::Wrapper::operator==;
%ignore ns::Wrapper::operator==(const ns::Wrapper&) const;

我还了解了 T 可能代表的类(假设现在是数据类):

%ignore ns::Wrapper<Data>::operator(const ns::Wrapper<Data>&) const;
%template(WrappedData) ns::Wrapper<Data>;
%ignore WrappedData::operator==(const WrappedData&) const;

最佳答案

您可以使用以下选项之一 %ignore指令,必须在 Wrapper声明之前出现类(例如,在相应的 %include 指令之前):

  • %ignore ns::Wrapper::operator==;
  • %ignore ns::Wrapper<Data>::operator==;

关于c++ - SWIG——如何忽略模板化 C++ 函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35895113/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com