2000-07-27 14:04:40 +00:00
< html >
< head >
< meta http-equiv = "Content-Language" content = "en-us" >
< meta http-equiv = "Content-Type" content = "text/html; charset=windows-1252" >
< meta name = "GENERATOR" content = "Microsoft FrontPage 4.0" >
< meta name = "ProgId" content = "FrontPage.Editor.Document" >
< title > Boost Integer Library< / title >
< / head >
< body bgcolor = "#FFFFFF" text = "#000000" >
< table border = "1" bgcolor = "#007F7F" cellpadding = "2" >
< tr >
< td bgcolor = "#FFFFFF" > < img src = "../../c++boost.gif" alt = "c++boost.gif (8819 bytes)" width = "277" height = "86" > < / td >
< td > < a href = "../../index.htm" > < font face = "Arial" color = "#FFFFFF" > < big > Home < / big > < / font > < / a > < / td >
2000-11-10 15:39:05 +00:00
< td > < a href = "../libraries.htm" > < font face = "Arial" color = "#FFFFFF" > < big > Libraries < / big > < / font > < / a > < / td >
< td > < a href = "../../people/people.htm" > < font face = "Arial" color = "#FFFFFF" > < big > People < / big > < / font > < / a > < / td >
2000-07-27 14:04:40 +00:00
< td > < a href = "../../more/faq.htm" > < font face = "Arial" color = "#FFFFFF" > < big > FAQ < / big > < / font > < / a > < / td >
< td > < a href = "../../more/index.htm" > < font face = "Arial" color = "#FFFFFF" > < big > More < / big > < / font > < / a > < / td >
< / tr >
< / table >
< h1 > Boost Integer Library< / h1 >
< table border = "1" cellpadding = "5" >
< tr >
< td align = "center" > < b > < i > Header / Docs< / i > < / b > < / td >
< td align = "center" > < b > < i > Contents< / i > < / b > < / td >
< td align = "center" > < b > < i > Use< / i > < / b > < / td >
< / tr >
< tr >
< td align = "center" > < code > < a href = "../../boost/cstdint.hpp" > < boost/cstdint.hpp> < br >
< / a > < / code > < a href = "cstdint.htm" > < br >
documentation< / a >
< / td >
2000-11-12 18:37:04 +00:00
< td valign = "top" > Typedef's based on the 1999 C Standard header < < code > stdint.h> < / code > , wrapped in namespace boost.
This implementation may #include the compiler
supplied < < code > stdint.h> < / code > , if present. < / td >
2000-07-27 14:04:40 +00:00
< td valign = "top" > Supplies typedefs for standard integer types such as < code > int32_t< / code > or < code > uint_least16_t< / code > .
2000-11-12 18:37:04 +00:00
Use in preference to < < code > stdint.h> < / code >
for enhanced portability. Furthermore, all names are safely placed in the boost namespace.< / td >
2000-07-27 14:04:40 +00:00
< / tr >
< tr >
< td align = "center" > < code > < a href = "../../boost/integer_traits.hpp" > < boost/integer_traits.hpp> < / a > < / code > < br >
< br >
< a href = "integer_traits.html" > documentation< / a >
< / td >
< td valign = "top" > Template class < code > boost::integer_traits< / code > , derived from < code > std::numeric_limits< / code > .
Adds < code > const_min< / code > and < code > const_max< / code > members.< / td >
< td valign = "top" > Use to obtain the characteristics of a known integer type.< / td >
< / tr >
< tr >
< td align = "center" > < code > < a href = "../../boost/integer.hpp" > < boost/integer.hpp> < / a > < br >
< br >
< / code > < a href = "integer.htm" > documentation< / a > < / td >
< td valign = "top" > Templates for integer type selection based on properties such as
maximum value or number of bits.< / td >
< td valign = "top" > Use to select the type an integer when some property such as maximum value or number of bits is known.
Useful for generic programming. < / td >
< / tr >
< / table >
< h2 > Rationale< / h2 >
< p > The organization of boost integer headers and classes is designed to take
2000-11-12 18:37:04 +00:00
advantage of < code > < stdint.h> < / code > types from the 1999 C standard
2000-07-27 14:04:40 +00:00
without resorting to undefined behavior in terms of
the 1998 C++ standard. The header < code > < boost/cstdint.hpp> < / code >
2000-11-12 18:37:04 +00:00
makes the standard integer types safely available in namespace boost without placing any names in namespace std. As always, the intension is to complement rather than
2000-07-27 14:04:40 +00:00
compete with the C++ Standard Library. Should some future C++ standard
2000-11-12 18:37:04 +00:00
include < code > < stdint.h> < / code > and < code > < cstdint> < / code > , then < code > < boost/cstdint.hpp> < / code >
2000-07-27 14:04:40 +00:00
will continue to function, but will become redundant and may be safely deprecated.< / p >
< p > Because these are boost headers, their names conform to boost header naming
2000-11-12 18:37:04 +00:00
conventions rather than C++ Standard Library header naming conventions.
2000-07-27 14:04:40 +00:00
< h2 > Caveat emptor< / h2 >
< p > As an
implementation artifact, certain C < limits.h> macro names may possibly be
visible to users of < boost/cstdint.hpp> . Don't use these macros; they are not part of
any Boost specified interface.
Use boost:: integer_traits< > or std::numeric_limits< > instead.< / p >
2000-11-12 18:37:04 +00:00
< p >
As another implementation artifact, certain C
< code > < stdint.h> < / code > typedef names may possibly be visible in the
global namespace to users of < code > < boost/cstdint.hpp> < / code > .
Don't use these names, they are not part of any Boost specified
interface. Use the respective names in namespace < code > boost< / code >
instead.
2000-07-27 14:04:40 +00:00
< hr >
2001-10-01 15:54:23 +00:00
< p > Revised: <!-- webbot bot="Timestamp" S - Type="EDITED" S - Format="%d %b %Y" startspan --> 19 Aug 2001<!-- webbot bot="Timestamp" endspan i - checksum="14767" -->
2000-07-27 14:04:40 +00:00
< / p >
< / body >
< / html >