std::is_polymorphic
Da cppreference.com.
![]() |
Questa pagina è stata tradotta in modo automatico dalla versione in ineglese della wiki usando Google Translate.
La traduzione potrebbe contenere errori e termini strani. Muovi il puntatore sopra al testo per vedere la versione originale. Puoi aiutarci a correggere gli gli errori. Per ulteriori istruzioni clicca qui. |
Elemento definito nell'header <type_traits>
|
||
template< class T > struct is_polymorphic; |
(dal C++11) | |
Se
T
è una classe polimorfica (cioè una classe che dichiara o eredita almeno una funzione virtuale), fornisce il membro costante value
true uguali. Per qualsiasi altro tipo, è value
false.Original:
If
T
is a polymorphic class (that is, a class that declares or inherits at least one virtual function), provides the member constant value
equal true. For any other type, value
is false.The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
You can help to correct and verify the translation. Click here for instructions.
Indice |
Inherited from std::integral_constant
Member constants
value [statico] |
true se T is a polymorphic class type , false altrimenti Original: true if T is a polymorphic class type , false otherwise The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. (pubblico membro statico costante) |
Member functions
operator bool |
converte l'oggetto in bool, restituisce value Original: converts the object to bool, returns value The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. (metodo pubblico) |
Member types
Tipo
Original: Type The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. |
Definition |
value_type
|
bool
|
type
|
std::integral_constant<bool, value> |
[modifica] Note
Solo classi polimorfiche contengono informazioni RTTI nascosto che permette di esaminare e convertirli con dynamic_cast.
Original:
Only polymorphic classes contain hidden RTTI information which makes it possible to examine and convert them with dynamic_cast.
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
You can help to correct and verify the translation. Click here for instructions.
[modifica] Esempio
#include <iostream> #include <type_traits> struct A { int m; }; struct B { virtual void foo(); }; struct C : B {}; int main() { std::cout << std::boolalpha; std::cout << std::is_polymorphic<A>::value << '\n'; std::cout << std::is_polymorphic<B>::value << '\n'; std::cout << std::is_polymorphic<C>::value << '\n'; }
Output:
false true true
[modifica] Vedi anche
(C++11) |
checks if a type is a class type (but not union type) (classe template) |
(C++11) |
Verifica se un tipo è di tipo classe astratta Original: checks if a type is abstract class type The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. (classe template) |