123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899 |
- <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0.1 Transitional//EN">
- <html>
- <head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>Boost.MultiIndex Documentation - Index</title>
- <link rel="stylesheet" href="style.css" type="text/css">
- <link rel="start" href="index.html">
- <link rel="next" href="tutorial/index.html">
- </head>
- <body>
- <h1><img src="../../../boost.png" alt="boost.png (6897 bytes)" align=
- "middle" width="277" height="86">Boost Multi-index Containers Library</h1>
- <div class="prev_link"> </div>
- <div class="up_link"> </div>
- <div class="next_link"><a href="tutorial/index.html"><img src="next.gif" alt="tutorial" border="0"><br>
- Tutorial
- </a></div><br clear="all" style="clear: all;">
- <hr>
- <p>
- The Boost Multi-index Containers Library provides a class template named
- <code>multi_index_container</code> which enables the construction of containers
- maintaining one or more <i>indices</i> with different sorting and access semantics.
- Indices provide interfaces similar to those of STL containers, making using them
- familiar. The concept of multi-indexing over the same collection of elements is
- borrowed from relational database terminology and allows for the specification of
- complex data structures in the spirit of multiply indexed relational tables where
- simple sets and maps are not enough. A wide selection of indices is provided,
- modeled after analogous STL containers like <code>std::set</code>,
- <code>std::list</code> and <code>std::unordered_set</code>.
- </p>
- <p>
- Boost.MultiIndex features additional functionalities, like subobject searching,
- range querying, in-place updating of elements and calculation of ranks,
- which make it a convenient replacement
- for <code>std::set</code> and <code>set::multiset</code> even when no multi-indexing
- capabilities are needed.
- </p>
- <p>
- The versatile nature of Boost.MultiIndex allows for the specification of
- a wide spectrum of different data structures. The following are possible
- examples of use developed in the documentation:
- <ul>
- <li><a href="tutorial/basics.html#multiple_sort">Sets with several iteration orders
- and search criteria</a>.</li>
- <li><a href="tutorial/basics.html#list_fast_lookup">Lists with fast lookup</a>
- and/or without duplicates.</li>
- <li><a href="examples.html#example4">Bidirectional maps</a>, i.e. maps
- searchable either for key or value.</li>
- <li><a href="examples.html#example9">MRU (most recently used) lists</a>,
- structures keeping the <i>n</i> last referenced items, beginning with
- the newest ones.</li>
- <li><a href="tutorial/techniques.html#emulate_std_containers">Emulations of
- standard containers</a> taking advantage of the extra functionalities
- provided by Boost.MultiIndex.</li>
- </ul>
- </p>
- <h2>Contents</h2>
- <ul>
- <li><a href="tutorial/index.html">Tutorial</a></li>
- <li><a href="reference/index.html">Reference</a></li>
- <li><a href="compiler_specifics.html">Compiler specifics</a></li>
- <li><a href="performance.html">Performance</a></li>
- <li><a href="examples.html">Examples</a></li>
- <li><a href="tests.html">Tests</a></li>
- <li><a href="future_work.html">Future work</a></li>
- <li><a href="release_notes.html">Release notes</a></li>
- <li><a href="acknowledgements.html">Acknowledgements</a></li>
- </ul>
- <hr>
- <div class="prev_link"> </div>
- <div class="up_link"> </div>
- <div class="next_link"><a href="tutorial/index.html"><img src="next.gif" alt="tutorial" border="0"><br>
- Tutorial
- </a></div><br clear="all" style="clear: all;">
- <br>
- <p>Revised April 19th 2015</p>
- <p>© Copyright 2003-2015 Joaquín M López Muñoz.
- 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">
- http://www.boost.org/LICENSE_1_0.txt</a>)
- </p>
- </body>
- </html>
|