Recherche…
Remarques
La classe std::any
fournit un conteneur de type sécurisé auquel nous pouvons mettre des valeurs uniques de tout type.
Utilisation de base
std::any an_object{ std::string("hello world") };
if (an_object.has_value()) {
std::cout << std::any_cast<std::string>(an_object) << '\n';
}
try {
std::any_cast<int>(an_object);
} catch(std::bad_any_cast&) {
std::cout << "Wrong type\n";
}
std::any_cast<std::string&>(an_object) = "42";
std::cout << std::any_cast<std::string>(an_object) << '\n';
Sortie
hello world
Wrong type
42
Modified text is an extract of the original Stack Overflow Documentation
Sous licence CC BY-SA 3.0
Non affilié à Stack Overflow