Boost C++ Libraries

...one of the most highly regarded and expertly designed C++ library projects in the world. Herb Sutter and Andrei Alexandrescu, C++ Coding Standards

This is the documentation for a development version of boost.
PrevUpHomeNext

Part I. The Boost C++ Libraries (BoostBook Subset)

Table of Contents

1. Boost.Accumulators
Preface
User's Guide
Acknowledgements
Reference
2. Boost String Algorithms Library
Introduction
Release Notes
Usage
Quick Reference
Design Topics
Concepts
Reference
Rationale
Environment
Credits
3. Boost.Align
Introduction
Rationale
Examples
Reference
Vocabulary
Compatibility
Acknowledgments
History
4. Boost.Any 1.2
Introduction
Examples
ValueType requirements
Reference Section of Boost.Any
Acknowledgements
5. Boost.Array
Introduction
Reference
Design Rationale
For more information...
Acknowledgements
6. Boost.Chrono 2.0.8
Overview
User's Guide
Reference
Appendices
7. Boost.Circular Buffer
Introduction
Circular_buffer example
Rationale
Implementation
More Examples
Header Files
Modelled Concepts
Template Parameters
Trac Tickets
Release Notes
Acknowledgements
Documentation Version Info
Boost.Circular_buffer C++ Reference
Index
8. Boost.Container
Introduction
Main features
Boost.Container and C++ exceptions
Non-standard containers
Extended functionality: Basic extensions
Extended functionality: Configurable containers
Extended functionality: Extended allocators
C++11/C++14/C++17 Conformance
Known Issues
History and reasons to use Boost.Container
Indexes
Boost.Container Header Reference
Acknowledgements, notes and links
Release Notes
9. The Conversion Library 1.7
Description
Polymorphic casts
Synopsis
History
10. Boost.CRC 1.5
What is Boost.CRC?
Introduction
Theoretical CRC Computer
Optimized CRC Computer
CRC Function
Augmented-CRC Function
Pre-Defined CRC Samples
End Matter
Reference
11. Boost.Date_Time
Conceptual
General Usage Examples
Gregorian
Posix Time
Local Time
Date Time Input/Output
Serialization
Details
Examples
Library Reference
12. Boost.DLL
Motivation
Getting started
Tutorial
Mangled Import
Missuses
Reference
Limitations
F.A.Q.
Design Rationale
Dependencies
Revision History
Acknowledgements
13. Boost.Foreach
Introduction
Extensibility
Portability
Pitfalls
History and Acknowledgements
14. Boost.Function
Introduction
History & Compatibility Notes
Tutorial
Reference
Frequently Asked Questions
Miscellaneous Notes
Testsuite
15. Boost.Heap
Introduction & Motivation
Concepts & Interface
Data Structures
Reference
Acknowledgements
16. Boost.Interprocess
Introduction
Quick Guide for the Impatient
Some basic explanations
Sharing memory between processes
Mapping Address Independent Pointer: offset_ptr
Synchronization mechanisms
Managed Memory Segments
Allocators and memory allocation algorithms
Containers in managed memory segments
Boost containers compatible with Boost.Interprocess
Memory allocation algorithms
Direct iostream formatting: vectorstream and bufferstream
Ownership smart pointers
Architecture and internals
Customizing Boost.Interprocess
Acknowledgements, notes and links
Indexes and Reference
17. Boost.Intrusive
Introduction
Intrusive and non-intrusive containers
How to use Boost.Intrusive
When to use?
Concept summary
Presenting Boost.Intrusive containers
Safe hooks
Auto-unlink hooks
Intrusive singly linked list: slist
Intrusive doubly linked list: list
Intrusive associative containers: set, multiset, rbtree
Semi-Intrusive unordered associative containers: unordered_set, unordered_multiset
Map and multimap-like interface for associative containers
Intrusive avl tree based associative containers: avl_set, avl_multiset and avltree
Intrusive splay tree based associative containers: splay_set, splay_multiset and , splay_tree
Intrusive scapegoat tree based associative containers: sg_set, sg_multiset and sgtree
Intrusive treap based associative containers: treap_set, treap_multiset and treap
Binary search tree hooks: bs_set_base_hook and bs_set_member_hook
Advanced lookup and insertion functions for associative containers
Erasing and disposing values from Boost.Intrusive containers
Cloning Boost.Intrusive containers
Using function hooks
Recursive Boost.Intrusive containers
Using smart pointers with Boost.Intrusive containers
Obtaining iterators from values
Any Hooks: A single hook for any Intrusive container
Concepts explained
Node algorithms with custom NodeTraits
Containers with custom ValueTraits
Thread safety guarantees
Boost.Intrusive Iterator features
Stability and insertion with hint in ordered associative containers with equivalent keys
Obtaining the same types and reducing symbol length
Design Notes
Performance
Indexes
Release Notes
References
Acknowledgements
Reference
18. Boost.Lambda
In a nutshell
Getting Started
Introduction
Using the library
Lambda expressions in details
Extending return type deduction system
Practical considerations
Relation to other Boost libraries
Contributors
Rationale for some of the design decisions
Bibliography
19. Boost.Lexical_Cast 1.0
Motivation
Examples
Synopsis
Frequently Asked Questions
Changes
Performance
20. Boost.Lockfree
Introduction & Motivation
Examples
Rationale
Reference
Appendices
21. Boost.Tribool
Introduction
Tutorial
Reference
Testsuite
22. Boost.Metaparse
Description
Related publications and blogs
Preface
Getting started with Boost.Metaparse
User manual
Versioning
Performance
The design of the library
Reference
23. Boost.Move
Tested compilers
What is Boost.Move?
Introduction
Implementing copyable and movable classes
Composition or inheritance
Movable but Non-Copyable Types
Containers and move semantics
Constructor Forwarding
Implicit Move when returning a local object
Move iterators
Move inserters
Move algorithms
Emulation limitations
How the library works
Thanks and credits
Release Notes
Reference
24. Boost.MPI
Introduction
Getting started
Tutorial
Mapping from C MPI to Boost.MPI
Reference
Python Bindings
Design Philosophy
Performance Evaluation
Revision History
Acknowledgments
25. Boost.MultiArray Reference Manual
Library Synopsis
MultiArray Concept
Array Components
Auxiliary Components
26. Boost.Parser
Introduction
Configuration and Optional Features
This Library's Relationship to Boost.Spirit
Cheat Sheet
Tutorial
Extended Examples
Concepts
Compiler Support
Headers
Rationale
27. Boost.PFR 2.2
Intro
Short Examples for the Impatient
Tutorial
Limitations and Configuration
PFR as a C++20 module
How it works
Acknowledgements
Reference Section of PFR
28. Boost.PolyCollection
Introduction
An efficient polymorphic data structure
Tutorial
Performance
Reference
Future work
Release notes
Acknowledgments
29. Boost.Process
Process V1
Process V2
Acknowledgements
30. Boost.Program_options
Introduction
Tutorial
Library Overview
How To
Design Discussion
Acknowledgements
Reference
31. Boost.PropertyTree
What is Property Tree?
Five Minute Tutorial
Property Tree as a Container
Property Tree Synopsis
How to Populate a Property Tree
How to Access Data in a Property Tree
Appendices
Reference
32. Boost.Proto
Preface
Users' Guide
Reference
Appendices
33. Boost.Random
Introduction
Tutorial
Reference
Performance
History and Acknowledgements
34. Boost.Ratio 2.1.0
Overview
User's Guide
Reference
Appendices
35. Boost.Signals2
Introduction
Tutorial
Example programs
Reference
Thread-Safety
Frequently Asked Questions
Design Rationale
Signals2 API Changes
Testsuite
36. Boost.Stacktrace 1.0
Motivation
Getting Started
Configuration and Build
Theoretical async signal safety
Acknowledgments
Reference
37. Boost.StaticAssert
Overview and Tutorial
How it works
Test Programs
38. Boost.STLInterfaces
Introduction
This Library's Relationship to Boost.Iterator
The v1 and v2 Namespaces, and the Use of C++20 Concepts
Tutorial: iterator_interface
Tutorial: view_interface
Tutorial: sequence_container_interface
Tutorial: reverse_iterator
Tutorial: View Adaptors
Tutorial: closure and adaptor
Tutorial: bind_back() and More Complicated View Adaptors
Examples
Compiler Support
Reference
Rationale
39. Thread 4.8.0
Overview
Using and building the library
History
Future
Thread Management
Scoped Threads
Synchronization
Thread Local Storage
Synchronized Data Structures
Parallel - Fork-Join -- EXPERIMENTAL
Time Requirements
Emulations
Acknowledgments
Conformance and Extension
40. Boost.TypeErasure
Introduction
How to read this documentation
Basic Usage
Composing Concepts
Functions with Multiple Arguments
Concepts in Depth
Using Any
Examples
Concept Definitions
Predefined Concepts
Reference
Rationale
Future Work
Acknowledgements
Related Work
41. Boost.TypeIndex 4.1
Motivation
Getting started
Configuring and building the library
How it works
Examples
Boost.TypeIndex Header Reference
Making a custom type_index
Space and Performance
Code bloat
RTTI emulation limitations
Mixing sources with RTTI on and RTTI off
Acknowledgements
42. Boost.Typeof
Motivation
Tutorial
Reference
Other considerations and tips
Contributed By:
Acknowledgements
43. Boost.Units 1.1.0
Introduction
Quick Start
Dimensional Analysis
Units
Quantities
Examples
Utilities
Reference
Installation
FAQ
Acknowledgements
Help Wanted
Version Info
Release Notes
TODO
44. Boost.Variant
Introduction
Tutorial
Reference
Design Overview
Miscellaneous Notes
References
45. Boost.Xpressive
Preface
User's Guide
Reference
Acknowledgments
Appendices
46. Boost.YAP
Introduction
Manual
Concepts
Compiler Support
Dependencies
Reference
Rationale
47. Boost.Concept_Check
Concept reference

PrevUpHomeNext