GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • cpprefjp - C++日本語リファレンス
  • GitHub Project

This view

  • Original page
  • New address

GeezerVison is showing cpprefjp.github.io — variant - cpprefjp C++日本語リファレンス

  1. リファレンス
  2. variant

最終更新日時: 2026年08月20日 08時49分16秒 (JST)
Akira Takahashi が更新

履歴 編集

<variant>

variant(C++17)

<variant>ヘッダでは、候補の型を切り替えながら保持できる記憶域型を定義する。

このヘッダでは、以下の標準ヘッダをインクルードする:

  • <compare> (C++20)

フリースタンディング

このヘッダのほとんどの機能は、フリースタンディング処理系でも使用できる。ただし、std::get関数は、指定した型・インデックスと異なる値を保持しているときに例外を送出するため、フリースタンディング処理系では削除される。

機能一覧

名前 説明 対応バージョン
variant 候補の型を切り替えながら保持できる記憶域型 (class template) C++17
variant_size 候補型の数を取得する (class template) C++17
variant_alternative 候補型のi番目の型を取得する (class template) C++17
variant_npos 候補型の無効なインデックス値 (variable) C++17
holds_alternative variantオブジェクトが指定の候補型を現在保持しているかを判定する (function template) C++17
visit variantオブジェクトが現在保持している型に対応する関数を呼び出す (function template) C++17
monostate 空の状態を持つ型 (class) C++17
bad_variant_access variantオブジェクトが現在保持していない候補型に不正アクセスした際に発生する例外型 (class) C++17

バージョン

言語

  • C++17

参照

  • P0220R1 Adopt Library Fundamentals V1 TS Components for C++17 (R1)
  • P2051R0 C++ Standard Library Issues to be moved in Prague
  • P2407R5 Freestanding Library: Partial Classes
    • C++26で、このヘッダのクラスが(例外を送出するメンバなど一部を除いて)フリースタンディング処理系に対応した
You are visitor 01402503 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.