C++アプリケーションにPythonを埋め込みたい。私はBoostライブラリを使用しています-素晴らしいツールです。しかし、私には1つの問題があります。
Python関数が例外をスローした場合、それをキャッチしてアプリケーションでエラーを出力するか、エラーの原因となったPythonスクリプトの行番号などの詳細情報を取得します。
どうすればいいですか?PythonAPIまたはBoostで詳細な例外情報を取得するための関数が見つかりません。
try {
module=import("MyModule"); //this line will throw excetion if MyModule contains an error
} catch ( error_already_set const & ) {
//Here i can said that i have error, but i cant determine what caused an error
std::cout << "error!" << std::endl;
}
PyErr_Print()は、エラーテキストをstderrに出力し、エラーをクリアするだけなので、解決できません。