0

如果我使用的是 boost.python 或 pyplusplus,我该如何包装一个 int 指针,或者任何作为类成员变量的指针?

例如,我将如何包装x以下类:

class Foo{
    int * x;
}
4

1 回答 1

-1

首先,您需要将类和属性公开给 Python。

#include <boost/python.hpp>

BOOST_PYTHON_MODULE(mylib)
{
    using namespace boost::python;
    class_<Foo>("Foo")
        .def_readwrite("x", &Foo::x);
}

在 Python 中调用该类同样简单。

>>> import mylib
>>> fooObj = mylib.Foo()
>>> fooObj.x = 3
>>> print 'fooObj.x is ', fooObj.x
fooObj.x is 3
于 2012-04-06T18:42:46.933 回答