3

我在 C++ 代码中有以下常量

enum
{
    BOUNDARY_NONE = -1,
};

我想用 Boost.Python 将它暴露给 Python,这样它就可以在 Python 中作为BOUNDARY_NONE. 我不想在任何额外的范围内定义它。

我发现如何使用 Boost.Python v1 做到这一点

#include <boost/python/reference.hpp>
my_module_builder.add(make_ref(BOUNDARY_NONE), "BOUNDARY_NONE");

但我使用较新版本的 Python,但我不知道如何使用它访问 my_module_builder(我使用 BOOST_PYTHON_MODULE 代替)。

这里出现了类似的问题,但他们正在向类范围添加常量,我没有任何类范围可供使用。

4

1 回答 1

8

我没有找到比以下更好的东西:

scope().attr("BOUNDARY_NONE") = BOUNDARY_NONE;
于 2013-02-25T09:53:30.963 回答