std::holds_alternative
cppreference.netより
| ヘッダ <variant>
|
||
template< class T, class... Types >
constexpr bool holds_alternative( const std::variant<Types...>& v ) noexcept;
|
で定義 (C++17以上) | |
バリアント v が代替型 T を保持しているかどうかを調べます。T が Types...
パラメータ
| v | - | 検査するバリアント |
戻り値
true
バリアントが現在
T
の代替型を保持している場合、
false
それ以外の場合。
例
このコードを実行
#include <cassert> #include <string> #include <variant> int main() { std::variant<int, std::string> v = "abc"; assert(not std::holds_alternative<int>(v)); assert(std::holds_alternative<std::string>(v)); }
関連項目
variantが保持する代替案の0ベースのインデックスを返す
(public member function) |
|
|
(C++17)
|
インデックスまたは型(型が一意の場合)を指定してvariantの値を読み取り、エラー時には例外をスローする
(function template) |