ホーム | ブログ | C++辞典 | サイトマップ | FAQ | 掲示板 | リンク集
メイン・メニュー
インデックス
プログラミング
その他
Top / <cassert>ヘッダ

<cassert>ヘッダ

 他のヘッダとは異なり、<cassert>ヘッダは同一の翻訳単位から複数回インクルードされた場合に、その時々の状況に応じて動作が変化する。具体的には、<cassert>ヘッダがインクルードされる時点で、NDEBUG マクロが定義されていなければ assert マクロが有効になり、定義されていれば無効になる。

マクロ

assert

表明

形式
  void assert(int expr);

引数
  expr:  診断対象の

返却値
 なし

解説
 expr が真に評価される場合には何も行わない。そうでなければ、処理系定義診断情報stderr に出力し、abort 関数を呼び出す。診断情報には、expr に指定した実引数?文字列化した内容のほか、ソースファイル名および行番号?が含まれる。

 <cassert>ヘッダをインクルードする時点において NDEBUG マクロが定義されている場合、assert マクロは無効になる。具体的には、実引数? expr は評価されなくなり、また expr の内容に関わらず、assert は何も行わなくなる。

参照
__FILE__, __LINE__

参照

<assert.h>ヘッダ


トップ   編集 差分 バックアップ 添付 複製 名前変更   一覧 単語検索   ヘルプ   最終更新のRSS
Counter: 8094, today: 2, yesterday: 0
Last-modified: Sun, 20 Nov 2005 17:21:47 JST (4717d)
 ホーム | プロフィール | メール | ログイン | 管理
Copyright © 2005-2009 by TAKAGI Nobuhisa