借助 pybind11 和 Python C API, 我们可以方便的在 C++ 中创建 Python 脚本环境, 这里给出运行环境创建的一种方式:
wchar_t libraryPath[] = L"..., 这样保证我们不容易使用错误的类型对 Python 中的对象进行操作, 具体每个类型的作用这里不一一展开描述了, 下面再具体介绍一下 pybind11 中控制 Python 对象生命周期的辅助设施...., 最终将 C++ 对象和 Python 对象关联到了一起.
----
3.5.1 pybind11::detail::instance
在 Python 虚拟机中, 所有的 C++ UDT 对象,...常规 C++ 类对应的特化版本实现, 这个地方 pybind11 利用了 SFINAE 的正交特性, 也就是任何基于 SFINAE 支持的特化类型实现, 不能出现交集, 不能出现存在类型 A 和 B,...C++ 异常.
----
5.2 C++ 中处理 Python 异常
这个其实就是我们一般需要在引擎中支持的脚本错误处理回调, 回调中一般会输出错误日志等信息, 通过 pybind11, 这个功能也能很好的完成