Data questa richiesta:
"Sfruttando il principio dell'ereditariet�, implementare un applicativo che implementi la classe persona e la sua derivata classe studente mostrando:
- una sola funzione virtuale con chiamata per polimorfismo a run-time."
il seguente codice (che viene compilato senza errore), esegue la richiesta del polimorfismo?
codice:
#include <iostream>
using namespace std;
#define SIZE 50
// definizione classe persona con funzione virtual pure
class persona
{
virtual void assegna_nome()=0;
};
// classe derivata
class studente:public persona
{
public:
char nome[SIZE];
char cognome[SIZE];
int matricola;
void assegna_nome()
{
cout<<"Inserire nome studente: ";
cin>>nome;
cout<< endl;
}
void assegna_cognome();
void assegna_matricola();
};
void studente::assegna_cognome()
{
cout<<"Inserire cognome studente: ";
cin>>cognome;
cout<< endl;
}
void studente::assegna_matricola()
{
cout<<"Inserire numero matricola studente: ";
cin>>matricola;
cout<< endl;
}
int main ()
{
studente s;
s.assegna_nome();
s.assegna_cognome();
s.assegna_matricola();
cout<< "Il nome dello studente in esame e': " << s.nome << " " << s.cognome << ", matricola: " << s.matricola << endl;
cout<< endl;
}
Grazie!