私はにpublic std::list<int> object list_
を持っています。 Class B
、クラスA a
へのポインタを持ちます。クラスB
での方法では参照で渡さずにC++で参照する
...
std::list my_list = a->list_;
my_list.push_back(1);
my_list.push_back(2);
my_list.push_back(3);
私は、変更が元のリストに反映されていない理由である、my_listというは実際にlist_のコピーであることを理解しています。この特定の分野については、私は参照渡しを避けようとしています。私が直接オブジェクトa
てひとつひとつの時間を移動することなく、Aにlist_オブジェクトを参照するために次の操作を実行しなくても...
a->list_.push_back(1);
a->list_.push_back(2);
a->list_.push_back(3);
は、それは可能でしょうか?
おかげ
より良い質問は、なぜ参照を渡すのを避けたいのでしょうか?必要以上に問題を複雑にしているかもしれません。 –
あなたの 'list_'メンバーはなぜ公開されていますか?それはあなたのアプローチを再訪したいかもしれないデザインの匂いです。 –