来自内置类型的python转换器

2024-10-01 22:44:28 发布

您现在位置:Python中文网/ 问答频道 /正文

对于内置类型,比如从PyLong_Type到{},boost python从python转换器注册到哪里?在

我想定义一个转换器,它可以从Python中取一个^ {< CD3>},并返回C++中函数的^ {< CD4>}。我已经用另一种方法做了,to-hupython转换器。为此,我对builtin_converters.hpp进行了调整,但我没有发现boostpython如何进行从python的转换。在


Tags: to方法函数类型定义type内置hpp
2条回答

我要补充一下这个答案,不过对于一个稍微不同的问题:

如何将Python类型的对象(即PyTypeObject,如PyLong_TypePyBool_TypePyUnicode_Type等)转换为boost::python::object

似乎这很好:

namespace bp = boost::python;

bp::object float_Type = bp::borrowed(
                            bp::downcast<PyTypeObject>(&PyFloat_Type))));

结果是,您可以通过boostpython对象向Python公开实际类型对象。在

实际上,from python转换是在builtin_converters.cpp中完成的,而不是在库的头部分。我复制了这个文件并删除了除了long double的转换器之外的所有内容,然后我可以对其进行修改。在

相关问题 更多 >

    热门问题