C++で遊ぼうスマートフォン用の表示で見るスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。ntnekの日記std::vectorには、パフォーマンス的に遅くなる部分が2点あります。リサイズ(コンストラクタ、resizeメンバ関数)によるデフォルトコンストラクタ呼び出しpush_back時のキャパシティチェックリサイズ操作を行ってリストを大きくすると、大きくした分はデフォルトコンストラクタ呼び出しによって初期化された値が入ります。この初期化がパフォーマンス的に困る場合があります。push_backを行うことになりますが、push_backには毎回キャパシティチェックのためのif文が入るため、これもものすごい回数呼び出すと、無視できないコストになる場合があります。どちらの方法をとるにしても、避けられないコストがあるということです。そのため、値初期化子しないリサイズ操作と、キャパシティチェックをしないpush_backの両方が提案されています。Gaztañagaさんによると、Boost.Containerは1.55.0時点で内部テスト用に値初期化しないリサイズ操作を持っているとのことです。default_init_t);これは1.55.0時点ではドキュメント化されていませんが、1.56.0にはドキュメントとテストを追加する予定だそうです。これは、以下のようにして使用します。}}472451923275511222752リサイズ操作で大きくした場所には、不定値が入っていることがわかります。Librariesコントリビュータ。boostjp/cpprefjpサイトコアメンバ。くわしい情報は、こちらを参照してください:http://faithandbrave.github.ioお仕事の依頼も受け付けております。Blog|ブログを報告する。