タグ

memoryとc++に関するtyruのブックマーク (8)

  • IntelliSenseのデータベースをRAMディスクに移動してみた - うなてっくろぐ


    VisualStudio IntelliSenseC++.ncb(2008).sdfipch(2010) *1100MB *2 Dataram RAMDisk2GBRAM使  VisualStudio
    IntelliSenseのデータベースをRAMディスクに移動してみた - うなてっくろぐ
  • shared_ptr & weak_ptr - くらいおらいと


    Web  (DL) Web  http://bit.ly/7dyNmz  2009/12/12 Boost.   http://bit.ly/6yjSkz Read less
    shared_ptr & weak_ptr - くらいおらいと
  • boost.interprocessさん凄いです - krustf の雑記


     C++ Advent Calendar 2010  C++ Advent Calendar jp 2010 : ATND *1 Twitterboost.interprocessMemory Mapped Files boost.interprocessMemory Mapped Files
    boost.interprocessさん凄いです - krustf の雑記
  • shared_ptrまとめ - while( c++ );


    shared_ptrweak_ptr boosthttp://www.ustream.tv/recorded/2981654 Smart Pointer Programming Techniques  shared_ptr1 - while( c++ ); shared_ptr2 - while( c++ ); shared_ptr3 - while( c++ ); shared_ptr4 - while( c++ ); boost::shared_ptr shared_ptr5 - while( c++ ); shared_ptr< void > shared_ptr6 - while( c++ );  shared_ptr7 - while( c++ ); dele
  • 今更ながらに Boost.SmartPointers を考える - 野良C++erの雑記帳


    Smart Pointers  shared_ptr scoped_ptr    調 [] : 09/12/16 使  http://www.ustream.tv/recorded/2981654  http://kiwofusi.sa
    今更ながらに Boost.SmartPointers を考える - 野良C++erの雑記帳
  • オレオレアロケータ - 神様なんて信じない僕らのために

    newとかmalloc()した領域をひっくるめて保持しておいて、リクエストに応じて区別無くfreeでブチ殺すとか、何か使い道ないかなあ(まだゆーか) 404 Not Found 釈迦に説法かもしれませんが、 ありますよ、オレオレアロケータ!!(ドラえもんの声で) と、newは引数を使ってオーバーロードできるのでクラスに対してnew operatorとdelete operatorを制御することで、 一気にメモリを確保して、一気に解放できます。 static void* operator new( std::size_t size, CAllocator& allocator ) { と宣言して、自前のアロケータを指定してやればOKでございます。 書き方によっては暗黙で使っても良いです。使う人はそれを知ってないと駄目ですが。 for文で回しているところは、こういう感じに一気にとるならnew

    オレオレアロケータ - 神様なんて信じない僕らのために
  • operator newとoperator deleteを書くときは規約を守ろう 8項 - higepon blog

    operator new を自分で作成するならば、いろいろ約束を守ろうという話。 自分もMonaでなんとなく new をユーザーランド向けに実装しているが以下のルールを一部守っていない気がする。 newのお約束 0byteの要求に対しても正規のポインタを返さなければならない(実装例では0byte要求は1byte要求として扱っている) エラー処理関数を呼ばなければならない std::bad_allocを投げないといけない Monaは例外をサポートしていないので今のところ無理p deleteのお約束 NULLポインタのdeleteを安全に行わせる。 つまりこれは よく見かけるコード if (somePointer != NULL) delete somePointer; は これでよい delete somePointer;ということになる。 追記: Monaのユーザランドで、newの0割り当

    operator newとoperator deleteを書くときは規約を守ろう 8項 - higepon blog
  • CとC++の動的メモリー管理(1)、malloc関数とnew演算子の違いを知る | EE Times Japan

    C言語とC++言語では、動的にメモリーを確保したり解放したりする手法は異なり、それぞれ長所と短所がある。もちろん、安全性を最重要視する組み込み機器では、動的に確保したメモリーを利用すべきでないという考え方には心から賛同する。リスクが利点を上回ってしまうからだ。しかし場合によっては、動的なメモリーを適切に管理することで改善できることも多いのではないかとも考えている。 C言語やC++言語に標準的に用意されているメモリー管理向け関数の動作が意図した通りでない場合は、メモリー管理関数を独自に開発するとよい。独自のメモリー管理関数の仕様と振る舞いは、できる限り標準関数と同じにすることが理想である。標準関数のメモリー管理方法と違ってしまう場合でも、関数の引数と返り値の数と型は、可能な限り標準関数にそろえるべきである。関数の仕様を同一にしておくことで、最初は標準のメモリー管理関数を使って開発し、必要に応

    tyru
    tyru 2009/09/04
  • 1