std:: holds_alternative
From cppreference.net
C++
Utilities library
|
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
std::variant
| Member functions | ||||
| Observers | ||||
| Modifiers | ||||
| Visitation | ||||
|
(C++26)
|
||||
| Non-member functions | ||||
|
holds_alternative
|
||||
| Helper classes | ||||
| Helper objects | ||||
|
Défini dans l'en-tête
<variant>
|
||
|
template
<
class
T,
class
...
Types
>
constexpr bool holds_alternative ( const std:: variant < Types... > & v ) noexcept ; |
(depuis C++17) | |
Vérifie si la variante
v
contient l'alternative
T
. L'appel est mal formé si
T
n'apparaît pas exactement une fois dans
Types...
Table des matières |
Paramètres
| v | - | variant à examiner |
Valeur de retour
true
si la variante contient actuellement l'alternative
T
,
false
sinon.
Exemple
Exécuter ce code
#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)); }
Voir aussi
retourne l'index de base zéro de l'alternative contenue par le
variant
(fonction membre publique) |
|
|
(C++17)
|
lit la valeur du variant selon l'index ou le type (si le type est unique), lance une exception en cas d'erreur
(fonction template) |