Ciao,
ho nella parte privata di una classe un vector a cui aggiungo elementi dall'interno della classe.
Avrei la necessità di ritornare questo vector per utilizzarlo (anche) al di fuori della classe stessa.
esempio:
Il metodo getSt provoca una copia del vector, che al momento non è un grosso problema, ma potrebbe diventarlo nel caso in cui st diventasse molto grande.codice:class vet{ private: vector <string> st; public: vet(){ st.push_back("uno"); st.push_back("due"); } vector <string> getSt(){ return st; } };
Allora ho pensato di scrivere un metodo del genere:
E' sensato? Oppure va assolutamente contro l'information hiding/buona oop?codice:const vector <string>* getSt_nocopy(){ return &st; }
Di fatto è costante per cui danni non se ne potrebbero fare da fuori.
Grazie 1k