【发布时间】:2011-02-13 16:06:13
【问题描述】:
您可以使用 getter 和 setter 向类添加属性(在简单的情况下):
class<X>("X")
.add_property("foo", &X::get_foo, &X::set_foo);
那么你可以像这样从 python 中使用它:
>>> x = mymodule.X()
>>> x.foo = 'aaa'
>>> x.foo
'aaa'
但是如何将属性添加到模块本身(不是类)?
有
scope().attr("globalAttr") = ??? something ???
和
def("globalAttr", ??? something ???);
我可以使用上述两种方式添加我的类的全局函数和对象,但似乎无法像在类中那样添加属性。
【问题讨论】:
标签: c++ python boost boost-python