2003: 10.3/1
estados, claramente:
Una clase que la declara o hereda una función virtual se llama una clase polimórfica.
Se llegó a decir esto por sí mismo, palabra por palabra, por lo que no entiende realmente cuál es la pregunta.
C
(y sus descendientes, si agrega alguno) es polimórfico; A
y B
no lo son.
Tenga en cuenta que, en un sentido más amplio programación orientada a objetos, siempre se puede llevar a cabo alguna "polimorfismo" en C++ que siempre le permite conversión hacia arriba; por lo tanto, todos los objetos que heredan pueden tratarse como un tipo diferente (pero relacionado).
Sin embargo, el término "polimorfo" se define de forma ligeramente diferente en C++, donde tiene más que ver con el hecho de que pueda abatido también.Si no quiere ser confuso como el estándar de C++, puede llamar a esto "polimorfismo dinámico".
Me suena a tarea, al menos agregue la etiqueta: p – KaiserJohaan