|
|
|
![]() |
|
Strumenti |
![]() |
#1 |
Member
Iscritto dal: Apr 2006
Messaggi: 264
|
[C++] Passaggio array bidimensionale a operator <<
Salve. Ho un problema di questo tipo:
Codice:
ofstream & operator <<(ofstream & evento_i_w, data_giorno& dg, eventi e[][dg.c_mm] ) { ... } int main(){ ... evento_i_w << e[dg.c_gg][dg.c_mm]; } Codice HTML:
main_prove.cpp:383: error: `std::ofstream& operator<<(std::ofstream&)' must take exactly two arguments; main_prove.cpp:659: error: no match for 'operator<<' in 'evento_i_w << e[dg.data_giorno::c_gg][dg.data_giorno::c_mm]; Il secondo errore no. Spero possiate aiutarmi grazie |
![]() |
![]() |
![]() |
#2 |
Member
Iscritto dal: Apr 2006
Messaggi: 264
|
Vi prego
![]() ![]() |
![]() |
![]() |
![]() |
#3 | |
Senior Member
Iscritto dal: Oct 2005
Messaggi: 3306
|
Quote:
Per il primo, come dice il compilatore, gli argomenti devono essere 2, credo che dovresti rifattorizzare il codice se proprio ti serve quell'operatore. |
|
![]() |
![]() |
![]() |
#4 | |
Member
Iscritto dal: Apr 2006
Messaggi: 264
|
Quote:
Codice HTML:
La rifattorizzazione è il procedimento con il quale si prende del codice funzionante e lo si modifica in modo che funzioni meglio. Di solito, “meglio” significa “più velocemente”, sebbene possa anche significare “che usa meno memoria” oppure “che usa meno spazio su disco” o semplicemente “in modo più elegante”. Non riesco a capire come risolvere questo problema. Avete qualche idea? Grazie! |
|
![]() |
![]() |
![]() |
#5 |
Senior Member
Iscritto dal: Oct 2005
Messaggi: 3306
|
Quell'operatore accetta solo 2 parametri, c'è poco da fare. Io consigliavo il refactoring proprio per fare in modo di avere il numero di parametri giusto.
|
![]() |
![]() |
![]() |
#6 |
Member
Iscritto dal: Apr 2006
Messaggi: 264
|
Ok mi sono letto qualcosa circa questo refactoring però sono sempre al punto di partenza. Ho questo array bidimensionale di oggetti e devo per forza di cose passarlo all'operator che a sua volta chiama la funzione di scrittura su file all'interno di una classe.
|
![]() |
![]() |
![]() |
#7 |
Member
Iscritto dal: Apr 2006
Messaggi: 264
|
Ma sono tutti in vacanza?
![]() |
![]() |
![]() |
![]() |
#8 |
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
ofstream & operator <<(ofstream & evento_i_w, data_giorno& dg, eventi e[][dg.c_mm] )
Non può avere tre parametri... |
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 04:01.