Come modificare un vector che si trova in un'altra classe

di Anonimizzato10825 il
4 risposte
Ciao a tutti vorrei capire se riesco a modificare il contenuto di un struttura dati vector che si trova in un'altra classe.
praticamente nella classe lte-phy.h c'è questo vector
protected:
vector<prioSubChannel> m_prioSubChannels; 
ora il metodo nella stessa classe per restituirmi l'oggetto è il seguente
   
virtual std::vector<prioSubChannel> GetDownlinkPrioSubChannels(){ return m_prioSubChannels; }
ora in un'altra classe posso accedere al suddetto vettore in questo modo
vector<prioSubChannel> commonP=enb->GetPhy()->GetDownlinkPrioSubChannels();
ora non capisco se le modifiche che apporto a commonP, si ripercuotono proprio sul vector che ho nella classe lte-phy.h oppure quella che prelevo è solo una copia? e quindi modificandola non avrò cambiamenti nell'originale?

grazieeee

4 Risposte

  • Non vedo un ritorno per riferimento quindi stai lavorando su copie.
  • E come dovrei fare per farmi il passaggio per riferimento?
    posso creare due metodi che si chiamano allo stesso modo uno che mi da una copia e l'altro che mi da un riferimento?
  • Dai su,il passaggio di variabili per valore o per riferimento è la prima cosa che si impara in C/C++.
  • Hai ragione ...a volte non ci vogliamo sforzare nemmeno di accendere il cervello...!!!! scusa per la domanda stupida
Devi accedere o registrarti per scrivere nel forum
4 risposte