std::holds_alternative
Von cppreference.com
| Definiert in der Header-Datei <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 schlecht geformt, wenn T nicht genau einmal in Types... vorkommt.
Inhalt |
[edit] Parameter
| v | - | zu untersuchende Variante |
[edit] Rückgabewert
true, wenn die Variante derzeit die Alternative T enthält, andernfalls false.
[edit] Beispiel
Führen Sie diesen Code aus
#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)); }
[edit] Siehe auch
gibt den nullbasierten Index der vom variant gehaltenen Alternative zurück(public member function) | |
| (C++17) |
liest den Wert des variants anhand des Index oder des Typs (wenn der Typ eindeutig ist), wirft bei Fehler (function template) |