うーむ

C++のコードです。

Hoge、HogeMan、HogeUpdater という3つのクラスがある。

Hoge は hoge の中身。

HogeMan は Hoge をリストで保持している。

HogeUpdater は HogeMan が保持しているリストを元に、Hogeを更新する。

HogeUpdater::Update 関数で HogeMan が保持しているリストをもらい、イテレータでループさせて、Hoge の変数 isHoge をTRUE に更新したいのだが、どうやらこれだと動かないようだ。

おそらく、コピーされた Hoge に対して SetIsHoge(TRUE) を呼んでしまっているのだろうが、どう直したら HogeUpdater から HogeMan が保持しているリスト中の Hoge を更新できるのかわからない。

Help me!

追記

解決した!

コピーを受け渡ししていたので、ポインタか参照を渡すようにする

ポインタ版

//参照版