我已经用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(...);
这样它应该可以工作。