|
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Member functions | ||||
| Observers | ||||
| Modifiers | ||||
| Visitation | ||||
(C++26) | ||||
| Non-member functions | ||||
holds_alternative | ||||
| Helper classes | ||||
| Helper objects | ||||
Defined in header <variant> | ||
template<class T,class...Types> constexprbool holds_alternative(conststd::variant<Types...>& v)noexcept; | (since C++17) | |
Checks if the variantv holds the alternativeT. The call is ill-formed ifT does not appear exactly once inTypes...
Contents |
| v | - | variant to examine |
true if the variant currently holds the alternativeT,false otherwise.
#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));}
returns the zero-based index of the alternative held by thevariant(public member function)[edit] | |
(C++17) | reads the value of the variant given the index or the type (if the type is unique), throws on error (function template)[edit] |