サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
Switch 2
boost.cppll.jp
原文 ファイル依存関係の例 計算機科学において抽象グラフの最も一般的な用途は、依存関係の追跡である。 私たち(このドキュメントを読んでいるあなたを含めて)の日常における依存関係 追跡の一例を示すと、コーディングしたプログラムソースファイルにおける コンパイル依存性で、これらの依存性は、make や Visucal C++ のような IDE といったビルドシステム内部で、いくらかの変更が行われた ソースファイルに対して、再コンパイルしなければならないファイル数を 最小限にするために使用される。 図1に、killerapp というプログラムを 作成するために使用されるソースファイル、オブジェクトファイル、ライブラリファイルそれぞれを頂点として表現したグラフを示した。グラフ中の線は、 どのファイルが他のファイルを作成するのに使用されるか示す。 矢印の方向をどちらにするかという点は任意であるが、慣
基本的なグラフ理論の復習(Review of Elementary Graph Theory) この章は、基本的なグラフ理論を思い出させることを意図している。読者があらかじめグラフアルゴリズムの知識があるのなら、始めるにあたりこの章は十分であろう。もし読者がグラフアルゴリズムの知識がないのならば、 Cormen, Leiserson, RivestのIntroduction to Algorithms のようなもっと詳しいものを薦める。 グラフ抽象化(The Graph Abstraction) グラフは、多くの種類の問題を解くのに有効な数学的抽象化である。基本的には、グラフは頂点と辺から構成され、辺は二つの頂点を結ぶ。もっと正確には、 グラフ(graph)とは組(V,E)で表され、 Vは有限集合で、EはVの2項関係である。 Vは 頂点集合(vertex set) と呼ばれ、その要素を 頂
目次: the Boost Graph Library BGL への序章 歴史 刊行物 謝辞 クイック・ツアー 基本的なグラフ理論の復習 チュートリアル Property Maps The adjacency_list class 例題 ファイル依存関係の例 Kevin Bacon の6次数 Graph Coloring Sparse Matrix Ordering BGL 拡張 Constructing graph algorithms with BGL Converting Existing Graphs to BGL Boost Graph インタフェイス Graph Incidence Graph Bidirectional Graph Adjacency Graph Vertex List Graph Edge List Graph Vertex and Edge List Gr
Boost 多次元配列ライブラリ (Boost.MultiArray) Synopsis - 概要 Boost 多次元配列ライブラリは,多次元コンテナと, 意味的に等価な連続データの配列へのアダプタを提供する。 このライブラリのクラス群は,できるだけ STL コンテナと近い振る舞いをし, また N 次元配列の慣用句 (formulation) である, いわゆる "ベクタのベクタ" より便利でかつ有効な実装を提供する。 配列はひとたび構築されるとリサイズできないが, 保持するデータへの代替ビューを提供することによって, スライス (sliced) されまた形作られ (shaped) 得る。 Table of Contents - 目次 Rationale Related Work Short Example MultiArray Components Construction and As
shared_ptr class template Introduction Best Practices Synopsis Members Free Functions Example Handle/Body Idiom Thread Safety Frequently Asked Questions Smart Pointer Timings Programming Techniques Introduction shared_ptr クラステンプレートは、C++ の new などによって動的に確保されたオブジェクトへのポインタを保持する。 shared_ptr に指されたオブジェクトは、そのオブジェクトを指す最後の shared_ptr が 破棄もしくはリセットされるときに削除されることが保証されている。 example を参照のこと。 shared_ptr はC++標準ライブラリの
Synopsis Boost.Python へようこそ。 これは C++ と Python プログラミング言語との、シームレスな相互運用を可能にする C++ ライブラリである。 新しいバージョンは、より便利で柔軟なインターフェースを持っており、 下記の実装を含む多くの新しい機能を持たせるため、根本から書き換えられた。 参照とポインタ 大域的に登録される型の強制 Automatic Cross-Module Type Conversions 効率的な関数オーバーロード C++ 例外の Python への変換 デフォルト引数 キーワード引数 C++ の中での Python オブジェクト操作 Python イテレータとしてあつかわれる C++ イテレータのエクスポート Documentation Strings The development of these features was fund
The Boost Graph Library (BGL) グラフは計算機科学の多くの種類の問題を解決するのに有用な 数学的抽象概念である。 必然的に、この抽象概念はコンピュータプログラムでも 表現されなければならない。 グラフを渡る(traverse)ための標準化されたジェネリックなインタフェースは、 グラフのアルゴリズムとデータ構造の再利用を促す上で最も重要である。 Boost Graph Library はグラフの構造へどのようにアクセスするかを定めた インタフェースである。これは、グラフのデータ構造の実装の詳細を隠す ジェネリックなインタフェースである。 これは以下のような意味に置いて``オープンな''インタフェースである。すなわち、このインタフェースを 実装したグラフライブラリはどれでも、 BGL のジェネリックなアルゴリズムや、 このインタフェースを用いる他のアルゴリズムと相互
ユニットテストフレームワーク事始め 今日は特別な日である。今日から新しい生活が始まる。 脂肪分の多い食事を食べるのはやめにして、フィットネスクラブに通い始め...今日から 今書いているプログラムのテストをしよう。プログラムの最後の行を書き終わったら テストができる。いやまてよ、コーディングしながらテストを書くほうがいい考えだ。 次回からはコーディング前の設計段階でテストを書くことにしよう。テストの書き方 についての本はたくさん読んできた。ユニットテストのフレームワークは手元にある。 新しいクラスのアイディアも浮かんだ。さあはじめよう! それでは、長さを持った、変更不可能なCの文字バッファ をカプセル化するconst_stringを使って説明しようと思う。推測では、この 文字列クラスはメモリは割り当てず、あらかじめ割り当てられた文字列バッファへの 使いやすい読み込み専用アクセスを提供する。c
Boostテストライブラリ: ユニットテストフレームワーク 受入テストによって、顧客は満足できる。 ソフトウェアが提供するビジネス価値が、顧客がお金を払いたいと 思うようなレベルを満足することが分かるからである。 ユニットテストによってプログラマは満足する。 プログラマが思う通りにソフトウェアが動作することを保障するからである。 XPの格言 ホーム イントロダクション テスト入門 フレームワークコンポーネント テストケース テストスイート テスト結果 テストログ テストモニター フレームワークの統合 フレームワークのパラメータ フレームワークのコンパイル 拡張 サンプル、テストプログラム 理論 設計 関連事項: テストツール イントロダクション Boostテストライブラリのユニットテストフレームワークは テストツール を使ったテストケースを作成し、それらを テストスイート階層内に整理するの
Boost Pool Library はじめに Poolとは何か? Poolアロケーションは使い方の制限があるものの非常に高速なメモリー割り当て方法である。 Poolアロケーション(「単純分割記憶域(simple segregated storage)」とも言う)のより詳細な情報は概念資料を見よ。 なぜPoolを使うのか? Poolsを使用すると、プログラム中でどのようにメモリーが使用されるかを、よりうまく管理することができる。 例えば、一度に小さなオブジェクトを大量に割り当てたいときがあり、 そしてそれらの一切が要らなくなるというときがやってくる、という状況になり得るだろう。 プールインターフェイス使えば、それらのデストラクターを実行するか、忘却の彼方へ送り去るかを選ぶことができる。 プールインタフェースはメモリーリークが起きないことを保証してくれる。 いつPoolを使うべきか? 通常、
概要 この文書は,アルゴリズム,シーケンス,メタ関数クラスの拡張可能なコンパイル時フレームワークである, Boost C++ テンプレートメタプログラミングライブラリ(MPL) について述べている. ライブラリは実環境での実際の実際の仕様に十分な,強力で使いやすいツールセットを構築するために, ジェネリックプログラミング,及び関数プログラミングの世界から,重要な抽象化を導入している. MPL は,C++標準ライブラリ[STL94], [ISO98]の一部である,標準テンプレートライブラリ (STL) の影響を強く受けている. STLの様に,MPLはこの領域に将来貢献するための土台となるような,公開された概念と実装の枠組みを定義している. ライブラリの基本的な概念とイディオムにより,ユーザが与えられたメタプログラミングの問題に対して, アドホックなアプローチの世界に引きづり込まれることなく,
Contents Purpose Using bind with functions and function pointers Using bind with function objects Using bind with pointers to members Using nested binds for function composition Examples Using bind with standard algorithms Using bind with Boost.Function Limitations Frequently Asked Questions Why doesn't this compile? Why does this compile? It should not. What is the difference between bind(f, ...)
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
浮動小数点数の比較アルゴリズム ホーム イントロダクション 許容値の選び方 close_at_toleranceアルゴリズム 編集 謝辞 参考 イントロダクション とても大きな数値は小さな数値では、abs(f1-f2) <= eというシンプルな解放では浮動小数点数の 等値チェックはうまくいかないことがある。そのため、operator=(...)の使用はふさわしくないと言える。 この浮動小数点数比較アルゴリズムはより信頼性の高い、Knuthの[1]の文献で紹介されている方法を元にしている。 不動小数点数 u と v 、許容値 e が与えられたとする。
スマートポインタプログラミングテクニック 不完全クラスを利用して実装を隠蔽する "Pimpl" イディオム 抽象クラスを利用して実装を隠蔽する delete px.get() を予防する shared_ptr を利用して配列へのポインタを保持する オブジェクトの確保の詳細をカプセル化し、ファクトリ関数をラップする 静的なオブジェクトを指すポインタを shared_ptr で保持する shared_ptr を利用して COM オブジェクトへのポインタを保持する shared_ptr を利用して組み込み参照カウントを持つオブジェクトを保持する shared_ptr を利用して他の所有権共有スマートポインタを保持する 生ポインタから shared_ptr を獲得する コンストラクタの中で this から shared_ptr (weak_ptr) を獲得する this から shared_ptr
オリジナルの、及びこの著作権表示が全ての複製の中に現れる限り、この文書の 複製、利用、変更、販売そして配布を認める。このドキュメントは「あるがまま」 に提供されており、いかなる明示的、暗黙的保証も行わない。また、 いかなる目的に対しても、その利用が適していることを関知しない。 Table of Contents 1. In a nutshell2. Getting Started2.1. Installing the library2.2. Conventions used in this document3. Introduction3.1. Motivation3.2. Introduction to lambda expressions4. Using the library4.1. Introductory Examples4.2. Parameter and return typ
ライブラリ . ドキュメント: 最新のリリース CVS(毎日更新) . ライセンス . Getting Started . 退行テスト: 一般的な情報 テスト結果 メーリングリストと ニュースグループ . Boost (Developers) . Boost Users . Project-Specific . Announcements . Discussion Policy サポート . FAQ . Request Support . Report Bugs . Suggest Features . Commercial Support . Also: Mailing Lists About . Formal Reviews . Review Schedule . Requirements . Guidelines . Submissions Other Resources . Fil
¤³¤ì¤Ï boost ¥é¥¤¥Ö¥é¥ê¤Ç»È¤ï¤ì¤Æ¤¤¤ë¡¢ ¥¸¥§¥Í¥ê¥Ã¥¯¥×¥í¥°¥é¥ß¥ó¥°µ»½Ñ¤ÎÉÔ´°Á´¤Ê³µ´Ñ¤Ç¤¢¤ë¡£ Table of Contents Introduction The Anatomy of a Concept Traits Tag Dispatching Adaptors Type Generators Object Generators Policy Classes Introduction ¥¸¥§¥Í¥ê¥Ã¥¯¥×¥í¥°¥é¥ß¥ó¥°¤Ï¥½¥Õ¥È¥¦¥§¥¢¥³¥ó¥Ý¡¼¥Í¥ó¥È¤ËÈÆÍѲ½¤Ë´Ø¤¹¤ë¤â¤Î¤Ç¤¢¤ê¡¢ ¤³¤ì¤Ë¤è¤ê¥³¥ó¥Ý¡¼¥Í¥ó¥È¤ò¿Íͤʾõ¶·¤ÇÍưפ˺ÆÍøÍѤ¹¤ë¤³¤È¤¬½ÐÍè¤ë¡£ C++ ¤
Exception-Safety in Generic Components Lessons Learned from Specifying Exception-Safety for the C++ Standard Library David Abrahams david.abrahams@rcn.com 概要 この文書は実世界の必要性に対する応答の中で蓄積された知識を表す: つまり、 C++ 標準テンプレートライブラリは、役立つ、そして明確な例外との相互作用を示し、 エラー捕捉の機構は C++ 言語の中核に組み込まれている。 この文書では、例外安全性の意味を探求し、例外と汎用性についての驚くべき神話を明らかにし、 プログラムの正当性を理由付けるための価値ある道具について述べ、 例外安全性を実証するための自動化されたテストの手続きを概説する。 Keywords: exception-sa
アルファベット順ライブラリリスト カテゴリ別ライブラリリスト 文字列とテキスト処理 コンテナ イテレータ アルゴリズム 関数オブジェクトとより高位のプログラミング ジェネリックプログラミング テンプレートメタプログラミング プリプロセッサメタプログラミング 並列プログラミング 数学と計算 正当性とテスト データ構造 入出力 言語間サポート メモリ 構文解析 その他 不完全なコンパイラの回避手段 どのライブラリがどのコンパイラで動くかを理解するには Compiler Status. ライブラリのダウンロード,ビルド,インストールについてはGetting Started. アルファベット順ライブラリリスト any - 異なる型のひとつの値を格納できる、安全で汎用的な入れ物。Kevlin Henney 作 array - STL に準拠した定数サイズの配列のラッパコンテナ。Nicolai Jos
Rationale あらゆる種類の数学的なソフトウェアが 効率を失することなくC++ 言語で書かれ得るのなら、 それは素晴らしいことだ。しかし C++ 型システムを犯すことなくこれを達成する何かが発見されない限り、 Fortran やアセンブラ、アーキテクチャ特定の拡張に頼る方がいいだろう (Bjarne Stroustrup)。 この C++ ライブラリは行列とベクトルに関する基本的な線形代数の構築、 及びそれらに対応する抽象的な演算といった水準での科学技術計算を目指している。 基本的な設計目標は、以下の通りである: 数学的表記 効率 機能性 互換性 もう一つの目的は、そのような行列とベクトルクラスを使うことによる抽象化の不利益が、 許容できるものかどうかを評価することである。 Resources このライブラリの開発はいくつかの似たような努力により導かれた: BLAS by Jack
[ Japanese | English ] In this project, we are translating the document of Boost C++ Libraries into Japanese. If you are interested in this project, please join us!! For details, see also how to join. Boost C++ Libraries http://www.boost.org/ Project Home Page http://boost.cppll.jp/ Mailing List http://lists.sourceforge.jp/mailman/listinfo/boostjp-developer Workspace (Sourceforge.jp) http://source
このページを最初にブックマークしてみませんか?
『Boost Document Translation Project Home Page』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く