[PR]

verify マクロを使う

戻る

 関数型マクロ verify() は式 expression が 偽 の場合に診断メッセージを表示して関数 abort() を呼び出します。
 マクロ verify() が定義される前にマクロ NDEBUG が定義された場合、マクロ verify() は式 expression の評価のみを行います。
 マクロ assert() との違いはマクロ NDEBUG が定義された場合にも式 expression の評価が行われることです。
 マクロ verify() は以下のようにして定義することができます。

/* verify(expression) マクロの定義 */
#ifdef NDEBUG
#define verify(expression) expression
#else // #ifdef NDEBUG
#define verify(expression) assert( 0 != (expression) )
#endif // #ifdef NDEBUG

関連

assert マクロを使う
dbgprintf マクロを使う
コンパイル時アサート


Google
ご意見・ご感想をお聞かせ下さい。匿名で送信できます。

 * 返信が必要な場合には postmaster@katsura-kotonoha.sakura.ne.jp へ直接メールしてください。

水無瀬 優 postmaster@katsura-kotonoha.sakura.ne.jp
『新妻LOVELY×CATION』を応援しています!