使用しているコンパイラおよびSTLはVisual Studio 2008 Professional付属のものです
C++にてSTLのコンテナにクラスオブジェクトを入れて使用しようと考えています
しかし、オブジェクトをコンテナへ挿入・削除した際に何度もコピーコンストラクタが呼び出されているのを確認しました
コンテナ内に直接、比較的大きめのリソースを持つオブジェクトを多数入れた場合、オブジェクトのコピーだけでパフォーマンスに影響が出るのではないか、と感じました
これはコンテナを使う上では許容しないといけないことなのでしょうか?
クラスオブジェクトを直接ではなく、ポインタで入れた場合は、コンテナ削除時にデストラクタが呼ばれないため、クラスポインタとコンテナの組み合わせはしてはいけないと認識しています
クラスとコンテナを組み合わせて使用する場合は、boostのshard_ptrを使用するのが、パフォーマンスを考慮する上では最も良い選択なのでしょうか?
それとも、それ以外の常識的な使用方法があるのでしょうか?
回答よろしくお願いします
No.2
- 回答日時:
キホン値コンテナですからねー。
C++11なら push_back を emplace_back にとっかえれば
無駄なコピーが減りますけども。
値コンテナという呼び方があるのですか
JavaやC#のようなガベージコレクタありの言語で実装されているコンテナ(コレクション)は参照コンテナだったんですね
C++11での新しい情報に関して、ありがとうございます
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- 賃貸マンション・賃貸アパート 周囲に気づかれずアパートもしくは貸しコンテナを借りる方法 1 2022/07/31 18:18
- レシピ・食事 コンテナ船のコンテナはどんなルールに従って乗せているのですか? 3 2022/06/17 10:50
- 物理学 豪華客船クイーンエリザベス号が転覆しないのはなんでやねん? 9 2023/04/29 08:16
- DIY・エクステリア ●(物流倉庫等で使用する) L型コンテナとは、どの様な物でしょうか? お聞かせ下さい! 2 2023/06/20 14:29
- Visual Basic(VBA) Excel VBA オブジェクトマクロ 使用指定について お詳しい方教えてください。 共通エクセルフ 2 2023/03/14 17:26
- ピクニック・キャンプ ルーフラックについて皆様の話を聞きたくて投稿しました。ラングラーに乗っていましてルーフラックを購入し 3 2023/04/26 17:07
- 掃除・片付け 段ボールに代わる収納ボックスについて 1 2022/03/27 02:23
- 防犯・セキュリティ 謎の封印、人型のようなシールを貼られた 2 2022/12/01 11:02
- 爬虫類・両生類・昆虫 ヘラクレスオオカブト 140代~150mm以上のオスを飼育してる方々は、その飼育ケース容器はどんなの 1 2023/08/06 09:58
- Java 複数TBLのオブジェクトを1つの変数(オブジェクト)でまとめて管理したい 1 2022/12/17 00:12
関連するカテゴリからQ&Aを探す
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
0 == False はいいけど
-
パワーポイントのVBAでテキスト...
-
VBAのWindowオブジェクトとWork...
-
EXCEL VBAにて動的にCheckBOXを...
-
VBAでvlookup関数から、別シー...
-
bmp画像をjpegやpng画像に圧縮...
-
C#でフォームのオブジェクト名...
-
オブジェクト指向とモジュール設計
-
オブジェクトの作成
-
ASP.net 教えてください!!(...
-
Excelが終了終了しない!
-
DOMの要素ををtextarea(dropし...
-
JAVAからHTMLへ値を返す方法
-
Excelで =EMBED("Acrobat Docu...
-
VBA 同じ名前のオブジェクトを...
-
COMコンポーネントって何?
-
VBAのオブジェクトの値を保持し...
-
【JavaScript】インスタンス化...
-
SetBkModeやSetTextColorは…
-
オブジェクト指向の自己
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
パワーポイントのVBAでテキスト...
-
Excelで =EMBED("Acrobat Docu...
-
JAVAからHTMLへ値を返す方法
-
ワイルドカード<?>と型パラメー...
-
C#でフォームのオブジェクト名...
-
VBAのWindowオブジェクトとWork...
-
EXCEL VBAにて動的にCheckBOXを...
-
VBA 同じ名前のオブジェクトを...
-
Object型からDouble型へのキャスト
-
ビジュアルC++でボタンの有...
-
COMコンポーネントって何?
-
LISTBOXの内容が更新されま...
-
Vbで通常使用するプリンターを...
-
多人数のじゃんけんプログラム
-
オブジェクト名をforループ内で...
-
ASP.net 教えてください!!(...
-
JSPのout.printについて
-
時間帯判定をする。
-
error C2712: オブジェクト ア...
-
Accessの連結・非連結オブジェ...
おすすめ情報