boost/index.htm
Thorsten Jørgen Ottosen 3c4ed1ab08 updated for boost.assing and boost.ptr_container
[SVN r32991]
2006-02-18 13:15:54 +00:00

646 lines
34 KiB
HTML

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
<head>
<title>Boost C++ Libraries</title>
<meta http-equiv="Content-Type" content="text/html; charset=us-ascii" />
<link rel="icon" href="more/favicon.ico" type="image/ico" />
<link rel="stylesheet" type="text/css" href="more/css_0/front.css" />
<!--[if IE]>
<style type="text/css">
body { behavior: url(more/css_0/csshover.htc); }
</style>
<![endif]-->
</head>
<body>
<div class="body-0">
<div class="body-1">
<div class="body-2">
<div id="heading">
<div id="heading-0">
<h1>
<img id="boost-logo" src="more/boost-dark-trans.png" alt=
"Boost C++ Libraries" width="237" height="55" /></h1>
<p id="heading-quote"><span class="quote">&ldquo;...one of the
most highly regarded and expertly designed C++ library projects
in the world.&rdquo;</span> <span class="attribution">&mdash;
<a href="http://www.gotw.ca/">Herb Sutter</a> and <a href=
"http://en.wikipedia.org/wiki/Andrei_Alexandrescu">Andrei
Alexandrescu</a>, <a href=
"http://safari.awprofessional.com/?XmlId=0321113586">C++ Coding
Standards</a></span></p>
<div class="clear"></div>
</div>
</div>
<div id="content">
<table summary="">
<tr>
<td id="sections" rowspan="2">
<div class="section" id="intro">
<h1>Welcome to Boost.org!</h1>
<div class="section-body">
<div class="section-body-0">
<div class="section-body-1">
<p>Boost provides free peer-reviewed portable C++
source libraries.</p>
<p>We emphasize libraries that work well with the C++
Standard Library. Boost libraries are intended to be
widely useful, and usable across a broad spectrum of
applications. The <a href=
"more/license_info.html">Boost license</a> encourages
both commercial and non-commercial use.</p>
<p>We aim to establish &quot;existing practice&quot; and
provide reference implementations so that Boost
libraries are suitable for eventual standardization.
Ten Boost libraries are already included in the
<a href="http://www.open-std.org/jtc1/sc22/wg21">C++
Standards Committee's</a> Library Technical Report (
<a href=
"http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2005/n1745.pdf">
TR1</a>) as a step toward becoming part of a future
C++ Standard. More Boost libraries are proposed for
the upcoming <a href=
"http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2005/n1810.html">
TR2</a>.</p>
<p class="note"><span class="note-label">Getting
started:</span> <span class="note-body">Boost works
on almost any modern operating system, including UNIX
and Windows variants. Follow the <a href=
"more/getting_started.html">Getting Started Guide</a>
to download and install Boost. Popular Linux and Unix
distributions such as <a href=
"http://fedora.redhat.com/">Fedora</a>, <a href=
"http://www.debian.org/">Debian</a>, and <a href=
"http://www.netbsd.org/">NetBSD</a> include pre-built
Boost packages. Boost may also already be available
on your organization's internal web
server.</span></p>
<p class="note"><span class=
"note-label">Background:</span> <span class=
"note-body">The <a href=
"more/background.html">Background Information
page</a> has introductory material to help those
educating their organization about Boost.</span></p>
</div>
</div>
</div>
</div>
<div class="section" id="participation">
<h2><a name="Membership" id=
"Membership"></a>Participation</h2>
<div class="section-body">
<div class="section-body-0">
<div class="section-body-1">
<p>Although Boost was begun by members of the C++
Standards Committee Library Working Group,
participation has expanded to include thousands of
programmers from the C++ community at large.</p>
<p>If you are interested in participating in Boost,
please join our main <a href=
"more/mailing_lists.htm#main">developers mailing
list</a>. Discussions are highly technical, and list
members are encouraged to participate in formal
reviews of proposed libraries. There is also a
<a href="more/mailing_lists.htm#users">users mailing
list</a>, and several <a href=
"more/mailing_lists.htm#projects">project specific
lists</a>.</p>
<p>Both the main Boost developers list and the users
list are also accessible as <a href=
"more/mailing_lists.htm">newsgroups</a>.</p>
</div>
</div>
</div>
</div>
<div class="section" id="news">
<h2>Latest News</h2>
<div class="section-body">
<div class="section-body-0">
<div class="section-body-1">
<h3>???, 2006 - Version 1.34.0</h3>
<h4>New Libraries</h4>
<ul>
<li><span class="library"><a href=
"doc/html/foreach.html">Foreach Library</a>:</span>
<tt>BOOST_FOREACH</tt> macro for easily iterating over
the elements of a sequence, from Eric Niebler.</li>
<li><span class="library"><a href=
"doc/html/xpressive.html">Xpressive Library</a>:</span>
Regular expressions that can be written as strings
or as expression templates, and that can refer to
each other and themselves recursively with the power
of context-free grammars, from Eric Niebler.</li>
<li><span
class="library"><a
href="libs/tr1/index.html">TR1
Library</a>:</span> An implementation
of the C++ Technical Report on Standard
Library Extensions, from John Maddock.
This library does not itself implement the TR1
components, rather it's a thin wrapper that will
include your standard library's TR1 implementation
(if it has one), otherwise it will include the Boost
Library equivalents, and import them into namespace
<code>std::tr1</code>. Highlights include: Reference Wrappers,
Smart Pointers, result_of, Function Object Binders,
Polymorphic function wrappers, Type Traits,
Random Number Generators and Distributions,
Tuples, Fixed Size Array, Hash Function Objects,
Regular Expressions, and Complex Number Additional Algorithms.</li>
</ul>
<h4>Updated Libraries</h4>
<ul>
<li><span class="library"><a href="libs/assign/index.html">Assign Library</a>:</span>
<ul>
<li> Support for <code>ptr_map&lt;key,T&gt;</code> via the new function <code>ptr_map_insert()</code>
<li> Support for initialization of <a href="libs/ptr_container/index.html">Pointer Containers</a>
when the containers hold pointers to an abstract base class.
</ul>
<li><span
class="library"><a
href="libs/multi_array/index.html">MultiArray
Library</a>:</span> Boost.MultiArray now by
default provides range-checking for
<code>operator[]</code>. Range checking can
be disabled by defining the macro
<code>BOOST_DISABLE_ASSERTS</code> before including
<tt>multi_array.hpp</tt>.</li>
<li><span class="library"><a href="libs/filesystem/doc/index.htm">Filesystem Library</a>:</span>
Major upgrade in preparation for submission
to the C++ Standards Committee for TR2. Changes include:<ul>
<li><a href="libs/filesystem/doc/i18n.html#Internationalization">
Internationalization</a>, provided by class templates <i>basic_path</i>,
<i>basic_filesystem_error</i>, <i>basic_directory_iterator</i>, and <i>basic_directory_entry</i>.</li>
<li><a href="libs/filesystem/doc/i18n.html#Simplification">
Simplification</a> of the path interface by
eliminating special constructors to identify
native formats.</li>
<li><a href="libs/filesystem/doc/i18n.html#Rationalization">
Rationalization</a> of predicate function design, including the addition
of several new functions.</li>
<li>Clearer specification by reference to <a href="libs/filesystem/doc/design.htm#POSIX-01">POSIX</a>, the ISO/IEEE
Single Unix Standard, with provisions for Windows and other operating systems.</li>
<li><a href="libs/filesystem/doc/i18n.html#Preservation">Preservation</a> of existing user code whenever possible.</li>
<li><a href="libs/filesystem/doc/i18n.html#More_efficient">More efficient</a>
directory iteration.</li>
<li>Addition of a <a href="libs/filesystem/doc/convenience.htm#basic_recursive_directory_iterator">
recursive directory iterator</a>. </li>
</ul>
</li>
<li><span
class="library"><a
href="libs/function/index.html">Function
Library</a>:</span> Boost.Function now
implements a small buffer optimization,
which can drastically improve the
performance when copying or construction
Boost.Function objects storing small
function objects. For
instance, <code>bind(&amp;X:foo, &amp;x, _1,
_2)</code> requires no heap allocation when
placed into a Boost.Function object.</li>
<li><span class="library">
<a href="libs/functional/hash/index.html">
Functional/Hash Library</a></span>
<ul>
<li>Use declarations for standard classes, so that
the library doesn't need to include all of their
headers</li>
<li>Deprecated the
<tt>&lt;boost/functional/hash/*.hpp&gt;</tt>
headers.</li>
<li>Add support for the
<tt>BOOST_HASH_NO_EXTENSIONS</tt> macro, which
disables the extensions to TR1</li>
<li>Minor improvements to the hash functions
for floating point numbers.</li>
</ul></li>
<li><span class="library"><a
href="libs/graph/doc/index.html">Graph
Library</a>:</span>
<ul>
<li><a href="libs/graph/doc/maximum_matching.html"><tt>edmonds_maximum_cardinality_matching</tt></a>, from Aaron Windsor.</li>
<li><a href="libs/graph/doc/lengauer_tarjan_dominator_tree.htm"><tt>lengauer_tarjan_dominator_tree</tt></a>, from JongSoo Park.</li>
<li><a href="libs/graph/doc/compressed_sparse_row.html"><tt>compressed_sparse_row_graph</tt></a>, from Jeremiah Willcock and Douglas Gregor of Indiana University.</li>
<li><a href="sorted_erdos_renyi_generator.html"><tt>sorted_erdos_renyi_iterator</tt></a>, from Jeremiah Willcock of Indiana University.</li>
<li><a href="libs/graph/doc/biconnected_components.html"><tt>biconnected_components</tt></a> now supports a visitor and named parameters, from Janusz Piwowarski.</li>
<li><a href="libs/graph/doc/adjacency_matrix.html"><tt>adjacency_matrix</tt></a> now models the <a href="libs/graph/doc/BidirectionalGraph.html">Bidirectional Graph</a> concept.</li>
<li><a href="libs/graph/doc/dijkstra_shortest_paths.html"><tt>dijkstra_shortest_paths</tt></a> now calls <tt>vis.initialize_vertex</tt> for each vertex during initialization.</li>
<li>See the <a href="libs/graph/doc/history.html#1.34.0">complete revision history</a> for more information.</li>
</ul></li>
<li><span class="library"><a href="libs/multi_index/doc/index.html">Multi-index Containers Library</a>:</span>
<ul>
<li>New <a href="libs/multi_index/doc/tutorial/indices.html#rnd_indices">random access indices</a>.</li>
<li>Non key-based indices feature new <a href="libs/multi_index/doc/tutorial/indices.html#rearrange">rearrange facilities</a>.</li>
<li>This version also includes a number of optimizations and usage improvements. For a complete list of changes, see the library
<a href="libs/multi_index/doc/release_notes.html#boost_1_34">release notes</a>.</li>
</ul></li>
<li> <span class="library"><a href="libs/ptr_container/index.html">Pointer Container Library</a>:</span>
<ul>
<li> Support for serialization via <a href="libs/serialization/index.html">Boost.Serialization. </a>
<li> Exceptions can be disabled by defining the macro BOOST_PTR_CONTAINER_NO_EXCEPTIONS before including
any header. This macro is defined by default if BOOST_NO_EXCEPTIONS is defined.
<li> Additional <code>std::auto_ptr&lt;T&gt;</code> overloads added s.t. one can also pass
<code>std::auto_ptr&lt;T&gt;</code> instead of only <code>T*</code> arguments to
member functions.
<li> <code>transfer()</code> now has weaker requirements s.t. one can transfer objects from
<code>ptr_container&lt;Derived&gt</code> to <code>ptr_container&lt;Base&gt</code>,
</ul>
<li><span class="library"><a href="libs/python/index.html">Python Library</a>:</span>
<ul>
<li>Boost.Python now automatically appends
C++ signatures to docstrings. The new
<a href="libs/python/doc/v2/docstring_options.html">
<code>docstring_options.hpp</code></a>
header is available to control the
content of docstrings.</li>
<li><a href="libs/python/doc/v2/stl_iterator.html#stl_input_iterator-spec">
<code>stl_input_iterator</code></a>, for
turning a Python iterable object into an
STL input iterator, from Eric Niebler.</li>
</ul></li>
<li><span class="library"><a href="libs/parameter/index.html">Parameter Library</a>:</span>
<ul>
<li>Every ArgumentPack is now a valid <a href="libs/mpl/doc/refmanual/forward-sequence.html">MPL Forward Sequence</a></li>
</ul></li>
<li><span class="library"><a href="libs/wave/doc/index.html">Wave Library</a>:</span>
<ul>
<li>Wave now correctly recognizes pp-number tokens as mandated by the C++ Standard, which are converted to C++ tokens right before they are returned from the library.</li>
<li>Several new preprocessing hooks have been added. For a complete description please refer to the related documentation page: <a href="libs/wave/doc/class_reference_ctxpolicy.html">The Context Policy</a>.</li>
<li>Shared library (dll) support has been added for the generated Wave libraries.</li>
<li>The overall error handling has been improved. It is now possible to recover and continue after an error or warning was issued. </li>
<li>Support for optional comment and/or full whitespace preservation in the generated output stream has been added. </li>
<li>This version also includes a number of bug fixes and usage improvements. For a complete list of changes, see the library <a href="libs/wave/ChangeLog">change log</a>.</li>
</ul></li>
</ul>
</div>
</div>
</div>
</div>
<div class="clear"></div> </td>
<td id="sidebars-top">
<div class="sidebar" id="boost-sidebar">
<div class="sidebar-0">
<div class="sidebar-1">
<div class="sidebar-2">
<div class="sidebar-3">
<div class="sidecell" id="libraries">
<div class="sidecell-0">
<h4>Libraries</h4>
<ul>
<li><a href=
"libs/libraries.htm">Documentation</a></li>
<li><a href=
"more/license_info.html">License</a></li>
<li><a href=
"http://sourceforge.net/project/showfiles.php?group_id=7586">
Download</a></li>
<li><a href=
"more/getting_started.html">Getting
Started</a></li>
</ul>
</div>
</div>
<div class="sidecell" id="tests">
<div class="sidecell-0">
<h4>Regression Tests</h4>
<ul>
<li><a href=
"status/compiler_status.html">General
Info</a></li>
<li><a href=
"http://www.boost.org/regression/release/user/">
Release</a></li>
<li><a href=
"http://www.boost.org/regression/developement/developer/">
Development</a></li>
</ul>
</div>
</div>
<div class="sidecell" id="search">
<div class="sidecell-0">
<h4>Search Boost</h4>
<form method="get" action=
"http://www.google.com/custom">
<p><span id="search-text"><input type="text"
name="q" id="q" size="31" maxlength="255"
alt="Search Text" /></span> <span id=
"search-choice"><select name="hq" id="hq">
<option label="Boost" value=
"site:www.boost.org">
Boost </option>
<option label="Documentation" value=
"site:www.boost.org inurl:www.boost.org/libs OR inurl:www.boost.org/doc">
Documentation </option>
<option label="Mailing Lists" value=
"site:lists.boost.org">
Mailing Lists </option>
</select></span> <span id="go"><input type=
"image" name="search" src="more/space.gif"
alt="Search" id="search-button" /></span>
<span id="google"><a href=
"http://www.google.com/search">
<img src=
"more/google_logo_25wht.gif" alt="Google" width="75" height="32" />
Powered</a></span> <input type="hidden" name=
"cof" value=
"LW:277;L:http://www.boost.org/boost.png;LH:86;AH:center;GL:0;S:http://www.boost.org;AWFID:9b83d16ce652ed5a;" />
<input type="hidden" name="sa" value=
"Google Search" /> <input type="hidden" name=
"domains" value=
"www.boost.org;lists.boost.org" /></p>
</form>
</div>
</div>
<div class="clear"></div>
</div>
</div>
</div>
</div>
</div>
<div class="sidebar" id="participation-sidebar">
<div class="sidebar-0">
<div class="sidebar-1">
<div class="sidebar-2">
<div class="sidebar-3">
<div class="sidecell" id="groups">
<div class="sidecell-0">
<h4>Groups</h4>
<ul>
<li><a href=
"more/mailing_lists.htm#main">Boost
(Developers)</a></li>
<li><a href=
"more/mailing_lists.htm#users">Boost
Users</a></li>
<li><a href=
"more/mailing_lists.htm#announce">Announcements</a></li>
<li><a href=
"more/mailing_lists.htm#interest">Boost
General Interest</a></li>
<li><a href=
"more/mailing_lists.htm#projects">Project-Specific</a></li>
<li><a href=
"more/discussion_policy.htm">Discussion
Policy</a></li>
</ul>
</div>
</div>
<div class="sidecell" id="contribute">
<div class="sidecell-0">
<h4>Contribute</h4>
<ul>
<li><a href=
"more/formal_review_process.htm">Formal
Reviews</a></li>
<li><a href=
"more/formal_review_schedule.html">Review
Schedule</a></li>
<li><a href=
"more/lib_guide.htm#Requirements">Requirements</a></li>
<li><a href=
"more/lib_guide.htm#Guidelines">Guidelines</a></li>
<li><a href=
"more/submission_process.htm">Submissions</a></li>
</ul>
</div>
</div>
<div class="clear"></div>
</div>
</div>
</div>
</div>
</div>
<div class="sidebar" id="resources-sidebar">
<div class="sidebar-0">
<div class="sidebar-1">
<div class="sidebar-2">
<div class="sidebar-3">
<div class="sidecell" id="support">
<div class="sidecell-0">
<h4>Support</h4>
<ul>
<li><a href="more/faq.htm">FAQ</a></li>
<li><a href=
"http://sourceforge.net/tracker/?group_id=7586">
Request Support</a></li>
<li><a href="more/bugs.htm">Report
Bugs</a></li>
<li><a href=
"more/requesting_new_features.htm">Suggest
Features</a></li>
<li><a href=
"more/links.htm#CommercialSupport">Commercial
Support</a></li>
<li><a href="more/mailing_lists.htm">Mailing
Lists</a></li>
<li><a href=
"more/version_history.html">Version
History</a></li>
</ul>
</div>
</div>
<div class="sidecell" id="other">
<div class="sidecell-0">
<h4>Other Resources</h4>
<ul>
<li><a href=
"http://boost-consulting.com/vault/">Vault
Files</a></li>
<li><a href=
"more/getting_started.html#CVS">Main
CVS</a></li>
<li><a href=
"more/mailing_lists.htm#sandbox">Sandbox
CVS</a></li>
<li><a href="tools/index.html">Tools</a></li>
<li><a href=
"people/people.htm">People</a></li>
<li><a href=
"doc/html/who_s_using_boost_.html">Who's
Using Boost?</a></li>
<li><a href=
"more/moderators.html">Moderators</a></li>
<li><a href="more/index.htm">More
Boost</a></li>
<li><a href="more/links.htm#cpp">More
C++</a></li>
</ul>
</div>
</div>
<div class="sidecell" id="official">
<div class="sidecell-0">
<h4>Official Branch Sites</h4>
<ul>
<li><a href=
"http://spirit.sourceforge.net/">Spirit</a></li>
</ul>
</div>
</div>
<div class="sidecell" id="unofficial">
<div class="sidecell-0">
<h4>Unofficial Branch Sites</h4>
<ul>
<li><a href=
"http://www.crystalclearsoftware.com/cgi-bin/boost_wiki/wiki.pl">
Wiki</a></li>
</ul>
</div>
</div>
<div class="clear"></div>
</div>
</div>
</div>
</div>
</div> </td>
</tr>
<tr>
<td id="sidebars-bottom">
<div class="sidebar" id="footer-sidebar">
<div class="sidebar-0">
<div class="sidebar-1">
<div class="sidebar-2">
<div class="sidebar-3">
<div class="sidecell" id="footer">
<div class="sidecell-0">
<div id="revised">
<p>Revised $Date$</p>
</div>
<div id="copyright">
<p>Copyright Beman Dawes, David Abrahams,
1998-2003.</p>
<p>Copyright Rene Rivera 2004-2005.</p>
</div>
<div id="license">
<p>Distributed under the Boost Software
License, Version 1.0. (See accompanying file
<a href="LICENSE_1_0.txt">LICENSE_1_0.txt</a>
or copy at <a href=
"http://www.boost.org/LICENSE_1_0.txt">www.boost.org/
LICENSE_1_0.txt</a>)</p>
</div>
<div id="banners">
<p><a href=
"http://validator.w3.org/check?uri=referer">
<img class="c1"
src="more/w3c_valid_xhtml10.png" alt=
"Valid XHTML 1.0!" width="88" height="31" /></a></p>
<p><a href=
"http://jigsaw.w3.org/css-validator/check/referer">
<img class="c1" src="more/w3c_valid_css.png"
alt="Valid CSS!" width="88" height="31" /></a></p>
<p><a href=
"http://sourceforge.net"><img class="c1" src=
"http://sourceforge.net/sflogo.php?group_id=7586&amp;type=1"
alt="SourceForge.net" /></a></p>
</div>
</div>
</div>
<div class="clear"></div>
</div>
</div>
</div>
</div>
</div> </td>
</tr>
</table>
</div>
</div>
</div>
</div>
</body>
</html>