提振.Python静态方法重载
Boost.Python static method overloads
如何使用Boost.Python公开以下类?
class C {
public:
static void F(int) {}
static void F(double) {}
};
我试过这样做:
bp::class_<C>("C")
.def("F", (void (C::*)(int))&C::F).staticmethod("F")
.def("F", (void (C::*)(double))&C::F).staticmethod("F")
;
但是,它会在Python (SystemError: initialization of libdistributions raised unreported exception
)中引发异常。如果我从bp::class_
中删除一个过载,那么一切都可以正常工作。我知道Boost。Python可以自动处理重载构造函数,所以我想知道是否有类似的静态方法。
<标题>
bp::class_<C>("C")
.def("F", (void (C::*)(int))&C::F) // Note missing staticmethod call!
.def("F", (void (C::*)(double))&C::F).staticmethod("F")
;
标题>我想你可以在这里找到解决问题的办法。
http://www.boost.org/doc/libs/1_48_0/libs/python/doc/tutorial/doc/html/python/functions.html python.overloading
相关文章:
- 重载类方法的不明确调用
- 尝试了解在导入的静态方法上使用删除方法时的错误
- 如何通过命名空间调用非静态方法
- 如何在没有实例的情况下获取非静态方法的类型?
- 调用从模板派生的类的静态方法,而不指定模板
- 如何在 c++ 中异步调用静态方法?
- C++ 将静态方法转换为简单方法
- "operator()"在重载运算符方法中是什么意思,在priority_queue(STL)中用作C++中的比较器?
- 从另一个标头中的标头调用静态方法
- C++中静态方法的局部变量范围
- 指向重载静态成员的函数指针 - 在unique_ptr中用作自定义删除器
- 如何启用使用另一个类的静态方法的模板函数的自动推导,从而消除冗长的调用方代码
- 使用本机 JNI 静态方法实现C++ Java 运行时错误
- 当只有静态方法受到影响时,如何解决C++中的链接器错误?
- 静态变量在同一个翻译单元中被静态方法使用时是否保证被初始化?
- 为什么链接器报告全局函数的乘法定义符号,而不是类静态方法
- 从部分专用模板方法调用模板非静态方法
- 提振.Python静态方法重载
- QtConcurrent::使用重载静态方法运行
- 如何将模板化函数重载转换为部分专门化的模板化类静态方法