Boost C++ 库

……世界上最受推崇、设计最精妙的 C++ 库项目之一。 Herb SutterAndrei AlexandrescuC++ Coding Standards

第 32 章。Boost.Ratio 2.1.0 - Boost C++ 函数库
PrevUpHomeNext

第 32 章。Boost.Ratio 2.1.0

Howard Hinnant

Beman Dawes

Vicente J. Botet Escriba

根据 Boost 软件许可证版本 1.0 发布。(参见随附文件 LICENSE_1_0.txt 或在 https://boost.ac.cn/LICENSE_1_0.txt 复制)

如何使用本文档

本文件使用以下命名和格式约定。

  • 代码使用 等宽字体,并进行语法高亮。
  • 您需要自行提供的可替换文本使用 斜体
  • 自由函数以代码字体显示,后跟 (),例如 free_function()
  • 如果名称是指一个类模板,则其显示方式如下: class_template<>;也就是说,它使用代码字体显示,其名称后跟 <> 以指示它是一个类模板。
  • 如果名称是指一个类似函数的宏,则其显示方式如下: MACRO();也就是说,它使用大写代码字体显示,其名称后跟 () 以指示它是一个类似函数的宏。类似对象的宏则不带末尾的 ()
  • 指向泛型编程意义上的概念的名称以驼峰式命名法表示。
[Note] 注意

此外,像这样的注释用于指定非必要信息,提供额外的背景或原理。

最后,您可以将以下内容添加到本文档中的任何代码片段中:

// Include all of Ratio files
#include <boost/ratio.hpp>
using namespace boost;

Boost.Ratio 旨在实现 C++11 中的编译时 ratio 功能,正如 N2661 - A Foundation to Sleep On 中所提议的那样。该文档提供了关键设计决策的背景和动机,并且是本文档中相当多信息来源。

由于 C++11 现在已普遍可用,该库仅保留以实现向后兼容性,并且从 Boost 1.84 开始,它实现了标准 <ratio> 头文件。

Boost.Ratio 库提供了

  • 一个类模板 ratio,用于指定编译时有理数常数,例如一纳秒的 1/3 或每米的英寸数。 ratio 表示编译时常数的编译时比率,支持编译时算术运算,并提供溢出和除零保护。
  • 它提供了 boost::ratio<N, D> 的文本表示形式,即 std::basic_string,这对于 I/O 可能很有用。

PrevUpHomeNext