问题描述
pybind11 documentation包含有关“模块析构函数”的部分。您如何使用pybind11实现“模块构造函数”?
假设我要在将模块导入Python中时执行C ++函数。通常,如果这是python模块,则只需将带有函数调用的命令添加到module.py
的顶级范围中。这是您可以在python模块中执行的最基本的操作-执行命令。但是pybind11的first steps首先添加了函数定义。如何在pybind11模块中添加命令?
解决方法
这就是用the PYBIND11_MODULE
macro定义的函数的内容。这是一项常规功能,您可以在那里进行所需的任何设置;当然,您通常会看到m
(例如m.def
)上的调用,但是您可以在其中进行任何设置来设置模块。