dout/wdoutをなかったことにするには?

公開:2011-09-19 08:08
更新:2020-02-15 04:36
カテゴリ:c++,dawもどきの作成,windows,audio

デバッグ出力に「dout」を利用している。これはcoutと使い方は同じでデバッグ出力に表示する。OutputDebugStrとかよりも格段に便利なので使っている。

でもこれを使うとリリースビルドでコードが残ってしまうのではないかと思ってアセンブラコードを見てみるとやっぱりコードが残っているようだ。OutputDebugStrだとマクロなのでリリースだと出力部分のコードは無かったことになる。このdoutも最終的にはOutputDebugStrを使うのだがそこは消えるとしてもそこまでに至るコードが残ってしまうのである。doutの行前後を#ifdef~#endifで囲ってもいいけど本末転倒な気がする。なんかいい方法はないだろうか。。

なんとなくダミーなクラスを作ってoperator<<とかをうまく実装すればできそうなので少しやってみたけど知識不足もありうまくいかなかった。