Telefonino.net network
 
| HOMEPAGE | INDICE FORUM | REGOLAMENTO | ::. NEI PREFERITI .:: | RSS Forum | RSS News | NEWS web | NEWS software |
| PUBBLICITA' | | ARTICOLI | WIN XP | VISTA | WIN 7 | REGISTRI | SOFTWARE | MANUALI | RECENSIONI | LINUX | HUMOR | HARDWARE | DOWNLOAD | | CERCA nel FORUM » |

Torna indietro   WinTricks Forum > Software > Programmazione

Notices

Rispondi
 
Strumenti discussione
Vecchio 08-09-2009, 20.54.55   #1
ArrigoC
Newbie
 
Registrato: 24-08-2009
Messaggi: 8
ArrigoC promette bene
[C++] read-only structure

Ciao a tutti. Sto facendo un programma, che non dovrebbe avere nulla di sbagliato, ma il compilatore mi scrive:

Codice:
assignment of data-member `Stagione::annoStagione' in read-only structure
Qualcuno può spiegarmi per favore cosa vuol significare questo errore, e come potrei correggerlo?

Grazie mille!
ArrigoC non è collegato   Rispondi citando
Vecchio 08-09-2009, 21.46.46   #2
Semi.genius
Guest
 
Messaggi: n/a
Posta la definizione della struct Stagione
  Rispondi citando
Vecchio 08-09-2009, 21.53.36   #3
ArrigoC
Newbie
 
Registrato: 24-08-2009
Messaggi: 8
ArrigoC promette bene
Scrivo tutto ciò che riguarda la Struct Stagione:

Codice:
// struttura Stagione
typedef struct Stagione
{
        int annoStagione;
        string squadra;
        int presenze;
        int golFatti;
        int golSubiti;
};
// inserimento dati nella struttura stagione
void inStagione(Stagione temp);
void inStagione(Stagione temp)
{
     cout << "Anno stagione: ";
     cin >> temp.annoStagione;
     getline(cin,temp.squadra); // getline fasullo per ovviare il problema del cin
     cout << "Squadra: ";
     getline(cin,temp.squadra);
     cout << "Presenze: ";
     cin >> temp.presenze;
     getline(cin,temp.squadra);
     cout << "Gol Fatti: ";
     cin >> temp.golFatti;
     getline(cin,temp.squadra);
     cout << "Gol Subiti: ";
     cin >> temp.golSubiti;
     getline(cin,temp.squadra);
}

// somma tra calciatore e stagione. il problema riguarda il secondo membro, ossia B.annoStagione ( ad esempio)
Calciatore ::Calciatore operator+(const Calciatore& A, const Stagione& B)
{
           bool t=true;
           for (int i; i < 40 && ( A.car.carriera[i].annoStagione == 0); i++ ) 
           {
               A.car.carriera[i].annoStagione = B.annoStagione; 
               A.car.carriera[i].squadra = B.squadra;
               A.car.carriera[i].presenze = B.presenze;
               A.car.carriera[i].golFatti = B.golFatti;
               A.car.carriera[i].golSubiti = B.golSubiti;
               t=false;
           }
           if (t) cout << "Archivio stagioni pieno. "<<endl;
}
ArrigoC non è collegato   Rispondi citando
Vecchio 09-09-2009, 10.09.02   #4
P8257 WebMaster
Gold Member
 
Registrato: 07-01-2002
Loc.: Milano
Messaggi: 2.863
P8257 WebMaster promette bene
Const è una parola chiave che in C e C++ ci si dovrebbe dimenticare...
P8257 WebMaster non è collegato   Rispondi citando
Vecchio 09-09-2009, 12.58.19   #5
Semi.genius
Guest
 
Messaggi: n/a
Quota:
Inviato da P8257 WebMaster
Const è una parola chiave che in C e C++ ci si dovrebbe dimenticare...
Beh, in questo caso il problema è che l'overloading dell'operatore + non si fa in questo modo... andrebbe restituito il risultato, non modificato la variabile
  Rispondi citando
Vecchio 09-09-2009, 16.55.31   #6
P8257 WebMaster
Gold Member
 
Registrato: 07-01-2002
Loc.: Milano
Messaggi: 2.863
P8257 WebMaster promette bene
Esatto, è sbagliato l'overload dell'operatore, la mia affermazione riguardo a 'const' è che al limite si può utilizzare se si vuole fare overload di operatori come '<<' e '>>' che non abbiano interazione con membri interni ma magari con stream e altre entità che non debbano modificare direttamente...
P8257 WebMaster non è collegato   Rispondi citando
Rispondi


Utenti attualmente attivi che stanno leggendo questa discussione: 1 (0 utenti e 1 ospiti)
 
Strumenti discussione

Regole di scrittura
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is ON
Gli smilies sono ON
[IMG] è ON
Il codice HTML è OFF

Vai al forum

Discussioni simili
Discussione Autore discussione Forum Risposte Ultimo messaggio
Feed'n Read 0.5.0b Thor Archivio News Software 0 12-03-2006 13.07.36
La memoria non poteva essere Read generato Da Crytal Report 9 Mugiz Windows 7/Vista/XP/ 2003 5 27-12-2005 08.14.01
[win2000] memoria non puo essere read karinleo Windows 9x/Me/NT4/2000 4 05-12-2005 13.11.09
errore svchost (memoria non poteva essere read) merlin Windows 7/Vista/XP/ 2003 3 27-09-2004 23.27.59
"...la memoria non poteva essere read...", che diavolo vuol dire!?!?! Ren@to Software applicativo 2 19-06-2004 20.10.37

Orario GMT +2. Ora sono le: 02.55.31.


E' vietata la riproduzione, anche solo in parte, di contenuti e grafica.
Copyright © 1999-2017 Edizioni Master S.p.A. p.iva: 02105820787 • Tutti i diritti sono riservati
L'editore NON si assume nessuna responsabilità dei contenuti pubblicati sul forum in quanto redatti direttamente dagli utenti.
Questi ultimi sono responsabili dei contenuti da loro riportati nelle discussioni del forum
Powered by vBulletin - 2010 Copyright © Jelsoft Enterprises Limited.