タグ

boostとc++に関するf99aqのブックマーク (12)

  • 動的削除子 (dynamic deleter) - 意外と知られていない? boost::shared_ptr の側面 - Cry’s Diary

    boost::shared_ptr は動的削除子 (dynamic deleter) と呼ばれる技法に基づいて実装されています.この動的削除子という技法で重要なのは, boost::shared_ptr が最終的に呼び出す解放処理が boost::shared_ptr のテンプレート引数の型に関係なく,コンストラクタに実際に渡されたポインタの型で,かつ boost::shared_ptr のコンストラクタの呼び出しの段階で 決定する,ということです. 以下のようなコードが,動的削除子の効果が一番分かりやすい例になるでしょう. class X{ public: ~X() { std::cout << "X::~X" << std::endl; } }; class B{ public: ~B() // virtual でないことに注意!! { std::cout << "B::~B" <<

    動的削除子 (dynamic deleter) - 意外と知られていない? boost::shared_ptr の側面 - Cry’s Diary
  • steps to phantasien t(2007-06-13) - 最近使った boost

    仕事腰を入れて C++ を使うになり, 久々に boost をさわっている. 以前より色々ライブラリが増えていて嬉しい. 今日は喜びの声をすこし. 普段から boost を使っている人にとっては当たり前の話題だと思います. boost::optional たとえば設定ファイルを扱うコードで, あるかどうかわからないオプションの扱いをを考える. "--log foo.log" と指定されたらログを foo.log に出力し, 何も指定されなければ標準エラー出力に書き出したいというような場合. けっこう悩ましい. よくある方法はこんなかんじ: class foo_config_t { ... bool has_log() const { return m_hash.contains("log"); } std::string logname() const { assert(has_log

    f99aq
    f99aq 2007/07/19
    boost::optional, boost::xpressive
  • p_stade; - noncopyableは駄目かもしれない

    EBOが働かない場合があるらしい (参照) もう自分でprivate部を書く方が簡単だと思う

    p_stade; - noncopyableは駄目かもしれない
  • 2005-09-02

    今更 http://www.kmonos.net/wlog/52.php#_0308050827 http://d.hatena.ne.jp/Nabetani/20050901#p2 らへんを読んで,以前ここら辺の話題で遊んだことがあったので http://d.hatena.ne.jp/Cryolite/20041124#p1 そのときのやつをちこっとだけ変形. 続きを読む しかしわざわざlambda使わんでもえーやん,とゆ〜. あwwちょwwwこれダメじゃんwwwww上のなしねwwww memoizeしているようでしてないのはさすがにまずかったw 続きを読む 当にこれでOKなのか?tree recursionだからでかい数字で測定したらすぐに差が出るはずだし測定しとくか. 以下コード. 続きを読む VC++7.1 りりーすびるど Windows XP SP2 Athlon XP 240

    2005-09-02
    f99aq
    f99aq 2006/12/01
    fix + memoize
  • Boost Library Requirements and Guidelines

    Introduction Requirements License requirements Portability requirements Ownership Organization Integration Guidelines Backwards Compatibility Design and programming Filenames Naming consistency Documentation Rationale Exception-specification rationale Naming conventions rationale Source code fonts rationale Tabs rationale Directory and filename rationale ECMAScript/JavaScript rationale Rationale r

  • Spirit v1.6

    Copyright © 1998-2003 Joel de Guzman Portions of this document: Copyright © 2001-2003 Hartmut Kaiser Copyright © 2001-2002 Daniel C. Nuffer Copyright © 2002 Chris Uzdavinis Copyright © 2002 Jeff Westfahl Copyright © 2002 Juan Carlos Arevalo-Baeza Copyright © 2003 Martin Wille Permission to copy, use, modify, sell and distribute this document is granted provided this copyright notice appears in all

  • boost ライブラリを使ってみる

    Cygwin に boost ライブラリをインストールして使ってみました。 インストール boost::regex 一致するかどうかの判定 文字列の置き換え boost::regex での正規表現 boost::spirit 簡単な例 セマンティックアクションとプリミティブパーサー 演算子 コメントを読み飛ばす パースツリーを作る パースツリーのノードを制御する 文字列リテラルの解析 エラー処理 集大成 トップへ ↑

  • Boost Libraries

    アルファベット順ライブラリリスト カテゴリ別ライブラリリスト 文字列とテキスト処理 コンテナ イテレータ アルゴリズム 関数オブジェクトとより高位のプログラミング ジェネリックプログラミング テンプレートメタプログラミング プリプロセッサメタプログラミング 並列プログラミング 数学と計算 正当性とテスト データ構造 入出力 言語間サポート メモリ 構文解析 その他 不完全なコンパイラの回避手段 どのライブラリがどのコンパイラで動くかを理解するには Compiler Status. ライブラリのダウンロード,ビルド,インストールについてはGetting Started. アルファベット順ライブラリリスト any - 異なる型のひとつの値を格納できる、安全で汎用的な入れ物。Kevlin Henney 作 array - STL に準拠した定数サイズの配列のラッパコンテナ。Nicolai Jos

  • asio C++ library

    Asio is a cross-platform C++ library for network and low-level I/O programming that provides developers with a consistent asynchronous model using a modern C++ approach.

  • C++ Glossary

    このページについて C++関係の話に出てくる言葉で、「読んで字の如し」 とはいかない難解語の簡単な解説を並べてみました。Glossaryというより、 むしろ略語辞典になってしまいました。巷で見かけた単語を並べているだけなので、 実際の所ほとんど使われない略語もあったりするかもしれません。 ちゃんとした用語集は Bjarne Stroustrup's C++ Glossary などをご覧になることをオススメします。 用語集 ADL (Argument Dependent name Lookup) 引数に依存した名前の探索。 Argument Based Lookup, Koenig Lookup とも呼ばれる。 #include <iostream> #include <string> ... std::string s; std::cout << s << std::endl; // os

  • Let's Boost

    Boost C++ Libraries の紹介サイトです。 :: by Google はじめに ご挨拶 Boost のインストール方法 参考リンク集 ニュース ◆ Version 1.42.0 と 1.41.0 対応 (2010/03/14) 新規ライブラリに関する Let's Boost のページ…: property_tree (汎用木構造型コンフィグ管理) / uuid (ユニークID生成器) ◆ RSS つけました (2009/08/28) ◆ Version 1.40.0 と 1.39.0 対応 (2009/08/28) 新規ライブラリに関する Let's Boost のページ…: Signals2 (Signal/Slotライブラリ改良版) ◆ Version 1.38.0 と 1.37.0 対応 (2009/02/22) 新規ライブラリに関する Let's Boost のペー

  • http://www.boost.org/tools/build/v1/vc-8_0-tools.html

  • 1