is_polymorphic, classe
Teste si le type a une fonction virtuelle.
Syntaxe
template <class Ty>
struct is_polymorphic;
Paramètres
Ty
Type à interroger.
Notes
Une instance du prédicat de type a la valeur true si le type Ty est une classe qui déclare ou hérite d’une fonction virtuelle, sinon elle contient false.
Exemple
// std__type_traits__is_polymorphic.cpp
// compile with: /EHsc
#include <type_traits>
#include <iostream>
struct trivial
{
int val;
};
struct throws
{
throws() throw(int)
{
}
throws(const throws&) throw(int)
{
}
throws& operator=(const throws&) throw(int)
{
}
virtual ~throws()
{
}
int val;
};
int main()
{
std::cout << "is_polymorphic<trivial> == " << std::boolalpha
<< std::is_polymorphic<trivial>::value << std::endl;
std::cout << "is_polymorphic<throws> == " << std::boolalpha
<< std::is_polymorphic<throws>::value << std::endl;
return (0);
}
is_polymorphic<trivial> == false
is_polymorphic<throws> == true
Spécifications
Header :<type_traits>
Espace de noms : std
Voir aussi
Commentaires
https://aka.ms/ContentUserFeedback.
Bientôt disponible : Tout au long de 2024, nous allons supprimer progressivement GitHub Issues comme mécanisme de commentaires pour le contenu et le remplacer par un nouveau système de commentaires. Pour plus d’informations, consultezEnvoyer et afficher des commentaires pour