タグ

関連タグで絞り込む (1)

タグの絞り込みを解除

NDEBUGに関するa1ghostのブックマーク (1)

  • アサーション

    [ C++で開発 ] アサーション プログラムの検証を行う際のツールの1つで、プログラム時の仮定が満たされないことを検出するための機構です。例えば、ある関数が引数に繰り返し回数を取るときに、設計上は1回以上100回以下を想定して実装していたとします。引数の型がsigned intであった場合、呼び出し側の誤りによって負の値や100を越えた値が渡されることがあります。引数の範囲をアサーションでチェックしていれば、誤りは即座に判明します。しかし、チェックがなければ誤りはずっと後の処理まで次々と伝播し、気がついたときにはとんでもない被害をもたらすかもしれません註1。 ANSI Cのassert アサーションは、ANSI C規格で定められています。簡単なサンプルを示します。 #include <stdio.h> #include <assert.h> void test_assert(int ti

    a1ghost
    a1ghost 2013/11/27
    コンパイルオプション
  • 1