...one of the most highly
regarded and expertly designed C++ library projects in the
world.
— Herb Sutter and Andrei
Alexandrescu, C++
Coding Standards
Copyright © 2001-2009 Beman Dawes, Daryle Walker, Gennaro Prota, John Maddock
Distributed under the Boost Software License, Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at https://www.boost.org/LICENSE_1_0.txt)
Table of Contents
Boost.Integer provides integer type support, particularly helpful in generic
programming. It provides the means to select an integer type based upon its
properties, like the number of bits or the maximum supported value, as well
as compile-time bit mask selection. There is a derivative of std::numeric_limits
that provides integral constant expressions for min
and max
. Finally, it provides
two compile-time algorithms: determining the highest power of two in a compile-time
value; and computing min and max of constant expressions.
Component |
Header |
Purpose |
---|---|---|
Forward Declarations. |
Forward declarations of classes and class templates - for use when just the name of a class is needed. |
|
Class template |
||
Templates for integer type selection based on properties such as maximum value or number of bits: Use to select the type of an integer when some property such as maximum value or number of bits is known. Useful for generic programming. |
||
|
Functions |
|
Templates for the selection of integer masks, single or lowest group, based on the number of bits: Use to select a particular mask when the bit position(s) are based on a compile-time variable. Useful for generic programming. |
||
Template for finding the highest power of two in a number: Use to find the bit-size/range based on a maximum value. Useful for generic programming. |
||
Templates for finding the extrema of two numbers: Use to find a bound based on a minimum or maximum value. Useful for generic programming. |
||
Solves mx + ny = gcd(x,y) for x and y. |
||
Given a and m, solves ax = 1 mod m for x. |