掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
CArrayの要素に派生クラスのオブジェクトを使うには? (ID:51072)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
CArrayなりstd::vectorなりに派生型を渡すことは出来ません。 class Base { /* ... */ }; class Derived : public Base { /* ... */ }; Base b; Derived d; b = d; とやっているのと,実質的に同じです。 #情報のスライスが起きる。 派生を扱うなら,ポインタを利用するのがよいです。 CPtrArrayってのがあるので,これが使えるのではないでしょうか? 標準C++であれば,boostからshared_ptrを用意して, std::vector<boost::shared_ptr<Base> > baseArray; という形になります。
←解決時は質問者本人がここをチェックしてください。
戻る
掲示板システム
Copyright 2020 Takeshi Okamoto All Rights Reserved.