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 >