salve ragazzi ho una classe di questo tipo
Codice PHP:
class squadre {
//definisco gli attributi relativi alla classe
string nome;
int giocate;
int vinte;
int perse;
int pari;
int gf;
int gs;
int penalita;
public:
//definizione dei vari metodi della classe
//Costruttore di default
squadre() {
nome = "";
giocate = 0;
vinte = 0;
perse = 0;
pari = 0;
gf = 0;
gs = 0;
penalita = 0;
}
//Costruttore
squadre (string name, int played, int won, int lost, int drawn, int scored, int conceded, int penality) {
nome = name;
giocate = played;
vinte = won;
perse = lost;
pari = drawn;
gf = scored;
gs = conceded;
penalita = penality;
}
//Distruttore
~squadre() {
cout << "Libero la memoria occupata...";
}
//Prototipi dei vari metodi sulla classe (definizione trattata successivamente)
void visualizza();
};
Voglio leggere dal file squadre.dat e stampare a video.
Codice PHP:
void squadre::visualizza(){
//Puntatore al file
FILE *filepunt;
if((filepunt = fopen("squadre.dat","r"))==NULL)
{
//Il file non esiste non posso visualizzare nessun elenco di squadre
//Restituisco un messaggio di errore
cout << "\n Il file 'squadre.dat' e' inesistente.\nNon e' stata inserita nessuna squadra!";
} else {
//Il file esiste quindi è stata inserita almeno una squadra.
//Stampo i titoli delle colonne
cout << "Squadra";
cout << "\tGiocate";
cout << "\tVinte";
cout << "\tPerse";
cout << "\tPari";
cout << "\tGol fatti";
cout << "\tGol subiti";
cout << "\tPenalita'";
cout << "\n" << endl;
//Mostro i risultati ordinati per ordine crescente di inserimento
fread(&squadre, sizeof(class squadre), 1, filepunt);
//Leggo il file fino alla fine col l'istruzione while
while(!feof(filepunt)) {
cout << nome;
cout << "\t" << giocate;
cout << "\t" << vinte;
cout << "\t" << perse;
cout << "\t" << pari;
cout << "\t" << gf;
cout << "\t" << gs;
cout << "\t" << penalita;
cout << endl;
}
}
}
Perche non mi funziona in questa maniera?
L'input output con le classi è consentito solo con la gestione c++ like?
Oppure sbaglio in qualche parte?
Grazie