• Class / Function / Type

      std::
    • Header file

      <>
    • Other / All

    最終更新日時(UTC):
    が更新

    履歴 編集

    class
    <contract>

    std::contract_violation

    namespace std {
      class contract_violation {
      public:
        uint_least32_t line_number() const noexcept;
        string_view file_name() const noexcept;
        string_view function_name() const noexcept;
        string_view comment() const noexcept;
        string_view assertion_level() const noexcept;
      };
    }
    

    概要

    contract_violationクラスは、発生した契約違反に関する情報を提供する。

    契約違反が発生したとき、このクラスのオブジェクトが処理系定義の方法により構築され、違反ハンドラーに渡される。

    違反ハンドラーはvoid(const std::contract_violation&) noexceptまたはvoid(const std::contract_violation&)の型を持つ関数であり、 処理系定義の方法によって指定される。

    メンバ関数

    名前 説明 対応バージョン
    line_number 契約違反が発生したソースコード上の行番号 C++ (将来)
    file_name 契約違反が発生したソースコードのファイル名 C++ (将来)
    function_name 契約違反が発生した関数の名前 C++ (将来)
    comment 契約違反の原因となった述語を説明する処理系定義のテキスト C++ (将来)
    assertion_level 違反した契約のアサーションレベル C++ (将来)

    (執筆中)

    出力

    (執筆中)

    バージョン

    言語

    • C++ (将来)

    処理系

    関連項目

    参照