版权所有 © 2001-2009 Beman Dawes, Daryle Walker, Gennaro Prota, John Maddock
根据 Boost 软件许可协议 1.0 版发布。(请参阅随附文件 LICENSE_1_0.txt 或在 https://boost.ac.cn/LICENSE_1_0.txt 复制)
Boost.Integer 提供了整数类型支持,尤其在泛型编程中非常有用。它提供了根据整数类型的属性(例如位数或最大支持值)选择类型的方法,以及编译时位掩码选择。它有一个 std::numeric_limits 的派生类,为 min
和 max
提供了整型常量表达式。最后,它提供了两个编译时算法:确定编译时值中最高的 2 的幂;以及计算常量表达式的最小值和最大值。
组件 |
头文件 |
目的 |
---|---|---|
前置声明。 |
类和类模板的前置声明 - 用于仅需要类名的情况。 |
|
整数特征. |
类模板 |
|
基于属性(例如最大值或位数)选择整数类型的模板:当已知某些属性(例如最大值或位数)时,用于选择整数类型。对泛型编程很有用。 |
||
|
函数 |
|
整数掩码. |
用于选择整数掩码(单个或最低组),基于位数的模板:当位位置基于编译时变量时,用于选择特定的掩码。对泛型编程很有用。 |
|
用于查找数字中最高 2 的幂的模板:用于根据最大值查找位大小/范围。对泛型编程很有用。 |
||
用于查找两个数字的极值的模板:用于根据最小值或最大值查找边界。对泛型编程很有用。 |
||
求解 mx + ny = gcd(x,y) 中的 x 和 y。 |
||
给定 a 和 m,求解 ax = 1 mod m 中的 x。 |