PDA

Visualizza la versione completa : [C++] Programma non compila


Inesperta
19-05-2016, 12:51
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;
- la allocazione a run-time (e relativa deallocazione) di un vettore di interi che contenga i voti riportati da uno studente nella sua carriera;
- overloading di un costruttore di copia passando per valore un oggetto di classe studente ad una funzione che calcoli la media dei voti riportati nella carriera;
- gestione di file di testo;
- architettura modulare.
:dh˛:



#include <iostream>
using namespace std;
#define SIZE 100


class persona // classe base, persona
{ public:
char nome[SIZE];
char cognome[SIZE];
int eta[10];
void inserisci_nome();
void inserisci_cognome();
void inserisci_eta();
};


class studente: public persona // classe derivata, studente
{ public:
int matricola[10];
void inserisci_matricola();
};


// inizio ad implementare le funzioni


void persona::inserisci_nome() {
cout<<"Inserire il nome: ";
cin>> nome;
cout<< endl; }


void persona::inserisci_cognome() {
cout<<"Inserire il cognome: ";
cin>> cognome;
cout<< endl; }


void persona::inserisci_eta() {
cout<<"Inserire l'eta': ";
cin>> eta;
cout<< endl; }


void studente::inserisci_matricola() {
cout <<"Inserire il numero di matricola: ";
cin>> matricola;
cout<< endl; }


main () {
persona p;
studente s;
p.inserisci_nome();
p.inserisci_cognome();
p.inserisci_eta();
s.inserisci_matricola();
cout << "Lo studente in esame e': ";
cout << p.nome;
cout << p.cognome;
cout << p.eta;
cout << s.matricola;
cout << endl;
}



NON COMPILA!
So che ci sono diversi errori, spero qualcuno abbia la pazienza di aiutarmi nel correggere questo codice e anche nell'implementare le altre richieste.
Ve ne sarei immensamente grata.

LeleFT
19-05-2016, 13:03
Manca il titolo della discussione, fondamentale per capire di cosa si sta parlando, senza essere costretti ad entrare nella discussione.

Aggiungo io un titolo.

PS: il codice va postato all'interno degli appositi tag
.. per mantenerne indentazione e formattazione... correggo anche questo.

Ciao. :ciauz:

oregon
19-05-2016, 13:24
Gli errori di compilazione li elimini se metti

int main()

e

return 0;

nel main

E poi devi usare degli interi per id e matricola, non degli array. Quindi

int id;

int matricola;

Inesperta
19-05-2016, 15:25
Grazie mille! Adesso funziona!

Puoi darmi un'idea di come implementare i punti due e tre? Ti ringrazio!

Inesperta
19-05-2016, 20:35
Nessuno che mi aiuti? :cry:

Loading