• Class / Function / Type

      std::
    • Header file

      <>
    • Other / All

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

    履歴 編集

    機能テストマクロ

    このページはC++11に採用された言語機能の変更を解説しています。

    のちのC++規格でさらに変更される場合があるため関連項目を参照してください。

    概要

    SD-6 は C++11 の機能について以下のテストマクロを定義することを推奨している:

    マクロ名 機能 ヘッダ
    __cpp_alias_templates 200704 エイリアステンプレート predefined
    __cpp_attributes 200809 属性 predefined
    __cpp_constexpr 200704 constexpr predefined
    __cpp_decltype 200707 decltype predefined
    __cpp_delegating_constructors 200604 委譲コンストラクタ predefined
    __cpp_inheriting_constructors 200802 継承コンストラクタ predefined
    __cpp_initializer_lists 200806 初期化子リスト predefined
    __cpp_lambdas 200907 ラムダ式 predefined
    __cpp_nsdmi 200809 非静的メンバ変数初期化子 predefined
    __cpp_range_based_for 200907 範囲for文 predefined
    __cpp_raw_strings 200710 生文字列リテラル predefined
    __cpp_ref_qualifiers 200710 *this のムーブセマンティクス predefined
    __cpp_rvalue_references 200610 右辺値参照 predefined
    __cpp_static_assert 200410 コンパイル時アサート predefined
    __cpp_unicode_characters 200704 ユニコード文字 predefined
    __cpp_unicode_literals 200710 ユニコードリテラル predefined
    __cpp_user_defined_literals 200809 ユーザー定義リテラル predefined
    __cpp_variadic_templates 200704 可変引数テンプレート predefined
    __has_cpp_attribute(carries_dependency) 200809 属性 predefined
    __has_cpp_attribute(noreturn) 200809 属性 predefined

    参照