掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
複数のクラスを基底クラスのポインタで管理 (ID:71661)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
> 消した後にremove()とerase()で切り詰めてしまおうかと考えていたのですが > これは手法としてはダメなんですかね・・・? 消すのが常に最後尾ならあまりコストがかからないだろうが、中間部ならば データの前詰めを行う必要がある。中間部のデータを削除する必要がある ならlistを使用したほうが世でしょう。 完全にランダムアクセスならばset。 何かの識別子に関連付けて管理するのならmapを使うのが一般的です。 > もう何が何だか(汗 コレクションにはそれぞれメリット/デメリットがあるので、どのような アクセスが多いのかを考えて選択する必要があります。 > Objectというクラスから派生した複数のクラスをObject *で管理したい。 > そこでvectorを使ってvector<Object *>で行こうと思ったけど、 デザインパターンのコンポジットパターンなので、一般的な手法ですが、 この複数というのが使用中に増減する場合、vectorを使用するのは管理上 のコスト(実行時間)がかかります。数が少ない分には問題にはなりませ んが、数が多くなくと問題が発生します。
←解決時は質問者本人がここをチェックしてください。
戻る
掲示板システム
Copyright 2020 Takeshi Okamoto All Rights Reserved.