問題タブ [pybind11]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - pybind11 を使用して Python 関数を std::function にキャストする方法
Python に正常にバインドされたFoo
を含むc++ 型があります。std::function<void()> funcs
私の目的は、Python で関数を定義し、それらをこの型に追加してから、インスタンスを返すことです。C ++では、pybindを使用して、機能するこのタイプのインスタンスを取得します。ただし、関数の 1 つを呼び出そうとすると、プログラムのセグメント フォールトが発生します。
そして後でC ++で
私のpythonモジュールにはこれがあります:
関数が正しく c++ にキャストされない理由がわかりません。
python - pybind11 基本コールバック、互換性のない関数シグネチャ エラー
私の人生では、pybind11 で構築された拡張モジュールで動作する非常に基本的な Python コールバック関数を取得することはできません。ここの例に従おうとしていますが、何か誤解していると思います。
C++ コードは次のとおりです。
そして、このモジュールを使用する Python コードは
ただし、次のエラーが表示されます。
関数のシグネチャが一致するとは思わないのはなぜですか? 例を一致させようとしましたが、何か誤解しているに違いないと思います...