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 snapshot of the develop branch, built from commit 2daa88693b.

Boost Develop Library Documentation - Algorithms

Algorithms

Algorithm

A collection of useful generic algorithms.

Author(s)
Marshall Clow
First Release
1.50.0
C++ Standard Minimum Level
03
Categories
Algorithms
Foreach

In C++, writing a loop that iterates over a sequence is tedious. We can either use iterators, which requires a considerable amount of boiler-plate, or we can use the std::for_each() algorithm and move our loop body into a predicate, which requires no less boiler-plate and forces us to move our logic far from where it will be used. In contrast, some other languages, like Perl, provide a dedicated "foreach" construct that automates this process. BOOST_FOREACH is just such a construct for C++. It iterates over sequences for us, freeing us from having to deal directly with iterators or write predicates.

Author(s)
Eric Niebler
First Release
1.34.0
Categories
Algorithms, Language Features Emulation
Geometry

The Boost.Geometry library provides geometric algorithms, primitives and spatial index.

Author(s)
Barend Gehrels, Bruno Lalande, Mateusz Loskot, Adam Wulkiewicz, Menelaos Karavelas and Vissarion Fisikopoulos
First Release
1.47.0
C++ Standard Minimum Level
14
Categories
Algorithms, Data structures, Math and numerics
GIL

(C++14) Generic Image Library

Author(s)
Lubomir Bourdev, Hailin Jin and Christian Henning
First Release
1.35.0
C++ Standard Minimum Level
14
Categories
Algorithms, Containers, Generic Programming, Image processing, Iterators
Graph

The BGL graph interface and graph components are generic, in the same sense as the Standard Template Library (STL).

Author(s)
Jeremy Siek and a University of Notre Dame team.
First Release
1.18.0
C++ Standard Minimum Level
03
Categories
Algorithms, Containers, Iterators
GraphParallel

The PBGL graph interface and graph components are generic, in the same sense as the Standard Template Library (STL).

Author(s)
Jeremy Siek, Doug Gregor, and a University of Notre Dame team.
First Release
1.40.0
C++ Standard Minimum Level
03
Categories
Algorithms, Containers, Iterators
Histogram

Fast multi-dimensional histogram with convenient interface for C++14

Author(s)
Hans Dembinski
First Release
1.70.0
C++ Standard Minimum Level
14
Categories
Algorithms, Data structures, Math and numerics
Min-Max

Standard library extensions for simultaneous min/max and min/max element computations.

Author(s)
Hervé Brönnimann
First Release
1.32.0
C++ Standard Minimum Level
03
Categories
Algorithms
Polygon

Voronoi diagram construction and booleans/clipping, resizing/offsetting and more for planar polygons with integral coordinates.

Author(s)
Lucanus Simonson and Andrii Sydorchuk
First Release
1.44.0
Categories
Algorithms, Data structures, Math and numerics
QVM

Generic C++ library for working with Quaternions Vectors and Matrices.

Author(s)
Emil Dotchevski
First Release
1.62.0
C++ Standard Minimum Level
03
Categories
Algorithms, Generic Programming, Math and numerics
Range

A new infrastructure for generic algorithms that builds on top of the new iterator concepts.

Author(s)
Niel Groves and Thorsten Ottosen
First Release
1.32.0
C++ Standard Minimum Level
03
Categories
Algorithms
Sort

High-performance templated sort functions.

Author(s)
Steven Ross
First Release
1.58.0
C++ Standard Minimum Level
03
Categories
Algorithms
String Algo

String algorithms library.

Author(s)
Pavol Droba
First Release
1.32.0
C++ Standard Minimum Level
03
Categories
Algorithms, String and text processing
Utility

Class noncopyable plus checked_delete(), checked_array_delete(), next(), prior() function templates, plus base-from-member idiom.

Author(s)
Dave Abrahams and others
First Release
1.13.0
C++ Standard Minimum Level
03
Categories
Algorithms, Function objects and higher-order programming, Memory, Miscellaneous, Patterns and Idioms