C++ でスキーマ バリデーターを使用して XML データをシリアル化しようとしています。エラーメッセージが表示されます。次のようにメッセージを報告できます。
std::cout << exception.what() << std::endl;
戻り値:
「エラー解析: スキーマを検証できません」
ただし、これを行うと:
std::cerr << exception.what() << std::endl;
特定の解析エラーを含む、より詳細なレポートを取得できます。報告された出力をログ用の変数にパイプしたいcerr
のですが、その方法がわかりません。
何か案は?
編集
私が使用している例外クラスは、実際にはtypedef
カスタム XSD 解析例外です。例外はタイプではありませんstd::exception
。<<
XSD コードの作成者が、タイプに応じて異なる出力を提供するためにオペレーターをオーバーロードしたかどうか疑問に思っていostream
ます。これは理にかなっていますか?私は前にそれを見たことがありません。