...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 Beman Dawes
Copyright © 2014-2021 Antony Polukhin
Distributed under the Boost Software License, Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
Table of Contents
The Conversion Library improves program safety and clarity by performing otherwise messy conversions. It includes cast-style function templates designed to complement the C++ Standard's built-in casts.
To reduce coupling, particularly to standard library IOStreams, the Boost Conversion Library is supplied by several headers:
polymorphic_cast<>
and polymorphic_downcast<>
to perform safe casting between polymorphic types.
polymorphic_pointer_cast<>
and polymorphic_pointer_downcast<>
implicit_cast<>
to perform implicit casts only
(no down-cast, no void*->T*, no U->T if T has only explicit constructors
for U).
lexical_cast<>
general literal text conversions, such as an int
represented as a string
,
or vice-versa.