最終更新:2026-10-12
C++ assert アサーション¶
著者について:¶
個人公式アカウント:

1.最初のアサーションの例¶
assertは、マクロであり、関数ではありません。
assertマクロのプロトタイプは
NDEBUG を定義することでassertを無効化できます。ただし、ソースコードの先頭、include
コード例:assert.c
出力: 出力を見ると、ソースファイルや行番号など、エラーの位置が示されていることがわかります!
2.アサーションと通常のエラー処理¶
- アサーションは主に、論理的に起こり得ない状況をチェックするために使われます。
たとえば、コードの実行開始前に期待される状態をチェックしたり、実行完了後に状態をチェックしたりする用途に使えます。通常のエラー処理とは異なり、アサーションは実行時に無効化されているのが普通です。
- アサーションを無視するには、コードの先頭に次を加えます:
サンプルコード:ignore_assert.c
関連トピック¶
- C++ 純粋仮想関数と抽象クラス | C++那些事
- C++ ビットフィールド | C++那些事
- C 言語による C++ 多態の実現 | C++那些事
- C++ const 定数と修飾 | C++那些事
- C++ const ファミリー | C++那些事
- C++ 間接参照演算子 * | C++那些事
- C++ 初期化と代入 | C++那些事
- C++ 複数戻り値の書き方 | C++那些事
- C++ mutable キーワード | C++那些事
- C++ restrict とコンパイル最適化 | C++那些事