タグ

move-semanticsに関するtyruのブックマーク (2)

  • 【5日目】Boost.Moveが気になって - にゃははー

    C++ Advent Calendar 2010も5日目を迎えました。 どーでもいいけど、日はBoostjp忘年会です!!そしてこのページの読書会はやりません。(キリッ さてさて、多くの人が待ち望んでいるC++0xですが、C++をいじり倒してる人もそうでない人も、触れる機会がダントツで多いかもしれないR-value referenceをC++03でエミュレートしたBoost.Moveについて今回は触れようかと思います。 以後*-value referenceを*v-refに略します。 (というか私がこういう記事(解説とかその類い)を書くのってあんまり無いな・・・ ※突っ込むところがあったら遠慮なく・・・ まずはおさらいから 多分ここに飛んできたということはAdvent Calendarから来たと思うので、Rv-refについてはどっかの人がやってくれてていて問題ないと思いますが、まぁ簡単に

    【5日目】Boost.Moveが気になって - にゃははー
  • std::vector の shrink_to_fit - 野良C++erの雑記帳

    C++0x の std::vector には、新しく shrink_to_fit() メンバ関数が用意されています。 これは「 vector の確保しているメモリ領域を、その大きさに見合ったサイズまで縮小する」関数で、 典型的な使い方は、以下のような感じになります: // std::vector に格納される要素数の見当がつけられない // が、「上限」は分かる。このとき余計な領域の再確保を避けたい std::size_t const limit = 〜〜; // vector に格納される要素の上限 std::vector<T> vec; // まず上限までメモリ領域を確保する vec.reserve( limit ); // vec に格納していく // ... // 格納終了。しかし、 // このままだと巨大なメモリ領域を占有してしまうので、 // vec の確保している領域を「 s

    std::vector の shrink_to_fit - 野良C++erの雑記帳
  • 1