luxorl
13-09-2009, 18:11
Ciao, volevo sapere qual è il modo migliore di passare una stringa ad un metodo che non la modifica.
metodo(const string& s) ??
Se è così, perché?
Se modifico vari metodi a cui prima passavo una stringa in questo modo:
metodo(string s)
con la versione di sopra, mi basta modificare solo le varie signature oppure devo andare a cambiare il codice in cui si invocano questi metodi?
Spiego meglio:
Se ho un metodo fun(string s) e lo trasformo in fun(const string& s) posso lasciare la sua invocazione così:
string x = "test";
fun(x);
?
metodo(const string& s) ??
Se è così, perché?
Se modifico vari metodi a cui prima passavo una stringa in questo modo:
metodo(string s)
con la versione di sopra, mi basta modificare solo le varie signature oppure devo andare a cambiare il codice in cui si invocano questi metodi?
Spiego meglio:
Se ho un metodo fun(string s) e lo trasformo in fun(const string& s) posso lasciare la sua invocazione così:
string x = "test";
fun(x);
?