C / C ++のマクロ印刷制御

C / C ++開発を行う際に、多くの場合、あなたはデバッグを容易にするために何かを印刷する必要がありませんが、彼らはもはや、現像後にデバッグ情報を印刷したいです。行うための最も面倒なことは、開発中の印刷デバッグ情報であり、その後、リリース時にこれらのコメントで情報を印刷します。それとも、マクロのifdef文印刷された情報を追加することができます。

比較的単純な数を実行する方法はありませんか?

1、C言語

一般的な言語使用のprintf C、として、次のとおりです。

//#定義__DEBUG
の#ifdef __DEBUG
の#define DEBUG(フォーマット、...)のprintf(フォーマット、## __ VA_ARGS__)
//可打印文件名、行号
//#定義DEBUG(フォーマット、...)のprintf(」 FILE: "__FILE__"、LINEた:%d: "形式" / n」は、__LINE__、## __ VA_ARGS__)
の#else
の#define DEBUG(フォーマット、...)
#endifの

代わりに、DEBUGによってprintf関数。

2、C ++

C ++ COUT出力は次のよう一般的に、使用:

//#定義__DEBUG
の#ifdef __DEBUG
の#define TCOUT COUT
の#else
の#define TCOUT 0 && coutの
#endifの

/ *
の#define TRAC
#ifndefのTRACE2
の#define coutの0 && coutの
#endifの
* /

TCOUTを使用して置換することCOUT。コメントはまだCOUTを使用して、第二のアプローチを行いました。

公開された12元の記事 ウォンの賞賛4 ビュー20000 +

おすすめ

転載: blog.csdn.net/wuzhidefeng/article/details/81565978