実行時チェックとしての表明とは? わかりやすく解説

Weblio 辞書 > 辞書・百科事典 > ウィキペディア小見出し辞書 > 実行時チェックとしての表明の意味・解説 

実行時チェックとしての表明

出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2021/05/21 09:00 UTC 版)

表明 (プログラミング)」の記事における「実行時チェックとしての表明」の解説

表明プログラマ前提条件としていたことがプログラム実装中にも保持されプログラム実行時でも正しいことを保証するのに使われる例えば、以下のJavaコード見てみよう: int total = countNumberOfUsers();assert(total >= 0); // total must be non-negativeif (total % 2 == 0) { // total is even} else { // total must be odd and non-negative assert(total % 2 == 1);} Javaでは % は剰余演算子である。その第一オペランドが負であった場合演算結果も負となる。ここでプログラマtotal が負でないという前提コーディングしており、2 で割った剰余は常に 0 か 1 だと考えている。表明assert)は、その前提条件明確に示している。countNumberOfUsers が負数返す可能性があるなら、これはプログラムバグとなる可能性がある。 この技法主な利点は、問題発生したときにそれを即時かつ直接的に検出できる点であり、後から検出しても様々な副作用によって真の原因がなかなかつかめないことがある表明違反コード上の位置表示することが多いので、煩雑なデバッグ作業なしで問題点即座に発見することができる。 表明決し実行されないと見なされている箇所置かれることもある。例えば、C、C++Javaのような言語で、switch 文default 節に表明を置くことがあるプログラマ予期しない状態が発生した場合実行そのまま続けるのではなくエラー発生させてプログラム停止させるのであるJavaでは、表明assert文としてバージョン 1.4 から言語一部となった表明違反は AssertionError を発生させる。 Cでは標準ヘッダファイル assert.h で assert(expression) マクロ定義されており、NDEBUGシンボル定義されていない場合有効になる表明失敗した場合エラーメッセージ標準エラー表示した後、abort()関数プログラム強制終了させることが規定されている。C++標準では cassert というヘッダを必要とするが、ライブラリによってはC言語同様の assert.h が使用可能となっている。 表明メモリ内容書き換えてしまったりスレッド動作タイミング変えてしまうなどの副作用を持つ危険性がある。表明プログラム本体への副作用生じないよう注意深く実装する必要がある

※この「実行時チェックとしての表明」の解説は、「表明 (プログラミング)」の解説の一部です。
「実行時チェックとしての表明」を含む「表明 (プログラミング)」の記事については、「表明 (プログラミング)」の概要を参照ください。

ウィキペディア小見出し辞書の「実行時チェックとしての表明」の項目はプログラムで機械的に意味や本文を生成しているため、不適切な項目が含まれていることもあります。ご了承くださいませ。 お問い合わせ



英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

「実行時チェックとしての表明」の関連用語

1
10% |||||

実行時チェックとしての表明のお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



実行時チェックとしての表明のページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
ウィキペディアウィキペディア
Text is available under GNU Free Documentation License (GFDL).
Weblio辞書に掲載されている「ウィキペディア小見出し辞書」の記事は、Wikipediaの表明 (プログラミング) (改訂履歴)の記事を複製、再配布したものにあたり、GNU Free Documentation Licenseというライセンスの下で提供されています。

©2025 GRAS Group, Inc.RSS