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 an old version of Boost. Click here to view this page for the latest version.

Boost 1.63.0 Library Documentation - Algorithms

By Category

String and text processing

Containers

  • GIL: Generic Image Library
  • Graph: The BGL graph interface and graph components are generic, in the same sense as the the Standard Template Library (STL).
  • GraphParallel: The PBGL graph interface and graph components are generic, in the same sense as the the Standard Template Library (STL).

Iterators

  • GIL: Generic Image Library
  • Graph: The BGL graph interface and graph components are generic, in the same sense as the the Standard Template Library (STL).
  • GraphParallel: The PBGL graph interface and graph components are generic, in the same sense as the the Standard Template Library (STL).

Algorithms

  • Algorithm: A collection of useful generic 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.
  • Geometry: The Boost.Geometry library provides geometric algorithms, primitives and spatial index.
  • GIL: Generic Image Library
  • Graph: The BGL graph interface and graph components are generic, in the same sense as the the Standard Template Library (STL).
  • GraphParallel: The PBGL graph interface and graph components are generic, in the same sense as the the Standard Template Library (STL).
  • Min-Max: Standard library extensions for simultaneous min/max and min/max element computations.
  • Polygon: Voronoi diagram construction and booleans/clipping, resizing/offsetting and more for planar polygons with integral coordinates.
  • QVM: Boost QVM is a generic library for working with quaternions, vectors and matrices of static size with the emphasis on 2, 3 and 4-dimensional operations needed in graphics, video games and simulation applications.
  • Range: A new infrastructure for generic algorithms that builds on top of the new iterator concepts.
  • Sort: High-performance templated sort functions.
  • String Algo: String algorithms library.
  • Utility: Class noncopyable plus checked_delete(), checked_array_delete(), next(), prior() function templates, plus base-from-member idiom.

Function objects and higher-order programming

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

Generic Programming

  • GIL: Generic Image Library
  • QVM: Boost QVM is a generic library for working with quaternions, vectors and matrices of static size with the emphasis on 2, 3 and 4-dimensional operations needed in graphics, video games and simulation applications.

Math and numerics

  • Geometry: The Boost.Geometry library provides geometric algorithms, primitives and spatial index.
  • Polygon: Voronoi diagram construction and booleans/clipping, resizing/offsetting and more for planar polygons with integral coordinates.
  • QVM: Boost QVM is a generic library for working with quaternions, vectors and matrices of static size with the emphasis on 2, 3 and 4-dimensional operations needed in graphics, video games and simulation applications.

Data structures

  • Geometry: The Boost.Geometry library provides geometric algorithms, primitives and spatial index.
  • Polygon: Voronoi diagram construction and booleans/clipping, resizing/offsetting and more for planar polygons with integral coordinates.

Image processing

  • GIL: Generic Image Library

Language Features Emulation

  • 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.

Memory

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

Patterns and Idioms

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

Miscellaneous

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