namespace std {
template <class T, class... Types>
constexpr bool holds_alternative(const variant<Types...>& x) noexcept;
}
概要
variant
オブジェクトが指定の候補型を現在保持しているかを判定する。
要件
- 型
T
がTypes...
内に一度だけ現れること。そうでない場合、プログラムは不適格となる
戻り値
型T
のTypes...
でのインデックスとx.index()
が等値である場合にtrue
を返し、そうでなければfalse
を返す。
例
出力
vはchar型を現在保持している
vはint型を現在保持していない
バージョン
言語
- C++17
処理系
- Clang: 4.0 ✅
- GCC: 7.3 ✅
- ICC: ??
- Visual C++: ??