Boost.Python - 不使用任何 boost for C++

Boost.Python - Without using any boost for C++?

本文关键字:任何 boost for C++ Python Boost      更新时间:2023-10-16

我已经用C++(本机)开发了一个库,并且没有在任何绑定中使用boost。

我正在使用 Python 为这个库创建一个包装器,以便它可以在客户端工作。在查看了所有可用的选项后,决定boost.python是选择的方法。问题是我是否可以将boost.python用于 Python/客户端,即使我没有在任何C++实现中使用 boost?

另外,假设我的库被称为myLib因此可以拥有:

myLib.Vector()我可以在哪里推送值? vect = myLib.Vector(1, 2, 3, 4, 5)

无需在C++库中创建名为 Vector 的类?

任何帮助将不胜感激

你可以使用 boost.python 并忽略 boost 的其余部分。

您可以在.cpp文件中显式实例化矢量模板专用化

template class vector<int>;

然后在你的 Python 代码中公开它:

class_<...>("Vector").def(...);

这样它应该可以工作。