std::holds_alternative
Von de.cppreference.net
| Definiert in Header <variant>
|
||
template< class T, class... Types >
constexpr bool holds_alternative( const std::variant<Types...>& v ) noexcept;
|
(seit C++17) | |
Prüft, ob die Variante v die Alternative T enthält. Der Aufruf ist fehlerhaft, wenn T nicht genau einmal in Types...
Parameter
| v | - | zu untersuchende Variante |
Rückgabewert
true
wenn der Variant aktuell die Alternative
T
enthält,
false
andernfalls.
Beispiel
Diesen Code ausführen
#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)); }
Siehe auch
gibt den nullbasierten Index der vom variant gehaltenen Alternative zurück
(öffentliche Elementfunktion) |
|
|
(C++17)
|
liest den Wert des Variants anhand des Index oder Typs (falls der Typ eindeutig ist), wirft bei Fehler
(Funktionstemplate) |