【解決方法】(stderr) エラーを取得/出力するにはどうすればよいですか"?


OK、RTFMの後、「関数バインド」が失敗時に「エラー」を設定することがわかりました…
1. 以下のコードからそのような情報を取得できますか?
(私は特定の「エラー」を求めているわけではありません。関数が (stderr) 「エラー」を設定することをコード内で示しているだけです。
2. エラーの実際のテキストを物理的に取得する最も簡単な方法は何ですか? それが「stderr」であると仮定します。
私はそれを表示したいだけであり、ログに記録したり、ファイルに保存したりする必要はありません(これが最も一般的な方法と思われます)。

C++
/**
   *  @brief Function template for std::bind.
   *  @ingroup binders
   */
  template<typename _Func, typename... _BoundArgs>
    inline _GLIBCXX20_CONSTEXPR typename
    _Bind_helper<__is_socketlike<_Func>::value, _Func, _BoundArgs...>::type
    bind(_Func&& __f, _BoundArgs&&... __args)
    {
      typedef _Bind_helper<false, _Func, _BoundArgs...> __helper_type;
      return typename __helper_type::type(std::forward<_Func>(__f),
					  std::forward<_BoundArgs>(__args)...);
    }

私が試したこと:

プロセスの開始と標準エラー出力の読み取りが失敗しました。

解決策 1

リチャードのコメントは正しいですが、あなたの質問はまったく明確ではありません。

通常、書きたいときは、 stderr あなたは次のようなことをします:

C++
fprintf( stderr, "Error at line %d of %s\n", __LINE__, __FILE__ );

stderr、 のように stdout、ファイルにリダイレクトすることもできます。

コメント

タイトルとURLをコピーしました