ソースコードに情報項目と進行状況の出力が含まれている C++ プロジェクトで Google ロガー (glog) を使用しています。
std::cout << some_useful_stuff << "\n";
また、GLOG を使用して情報項目をログに記録できます。
LOG(INFO) << some_useful_stuff << "\n"; \\ gets echoed to stdout
コードベース全体ですべてのstd::cout
ステートメントを変更することはできません (サードパーティなどのサブリポジトリを使用していて、独自のログステートメントをそれらに追加できないため)、これにより if-else 構造を使用できなくなります (これはとにかく醜い、すべての単一の出力ステートメントをロジックでラップします)。
stdout
では、出力を GLogに複製するにはどうすればよいでしょうか?
std::cout << some_useful_stuff << "\n"; \\ message also goes to LOG(INFO)
おそらく役に立つ: 実際には、これを同時に行う必要はありません。{CONSOLE, LOGS, BOTH} のような選択肢があると便利ですが、{CONSOLE, LOGS} の間のより単純な選択肢にも我慢できます。
また、経験豊富なプログラマーですが、C ++の初心者なので、これが非常に単純な場合。申し訳ありません - そして事前に感謝します!