Boost C++ 库

...这是世界上最受推崇、设计最精良的 C++ 库项目之一。 Herb SutterAndrei Alexandrescu, C++ Coding Standards

第 41 章。Boost.Units 1.1.0 - Boost C++ 函数库
PrevUpHomeNext

第 41 章。Boost.Units 1.1.0

Matthias C. Schabel

Steven Watanabe

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

Boost.Units 库是一个以通用且可扩展的方式实现量纲分析的 C++ 实现,将其视为一个通用的编译时元编程问题。通过适当的编译器优化,不会引入运行时执行成本,这使得该库可以用于在性能关键代码中提供量纲检查。它支持用于任意单位系统模型和任意值类型的单位和数量(定义为单位和相关值),并提供了一个细粒度的通用单位转换工具。提供了完整的 SI 和 CGS 单位系统,以及以度、弧度、梯度和转数为单位的角度系统,以及以开尔文、摄氏度和华氏度为单位的温度系统。库的架构设计考虑了灵活性和可扩展性;示例中提供了关于添加新单位和单位转换便捷性的演示。

为了实现复杂的编译时量纲分析计算而无需运行时开销,Boost.Units 大量依赖于 Boost Metaprogramming Library (MPL) 和模板元编程技术,因此对编译器对 ISO 标准的合规性要求很高。目前,它已在以下编译器/平台上成功编译和测试:

  1. Mac OSX 10.4 上的 g++ 4.0.1
  2. Mac OSX 10.4 上的 Intel CC 9.1、10.0 和 10.1
  3. Windows XP 上的 g++ 3.4.4、4.2.3 和 4.3.0
  4. Windows XP 上的 Microsoft Visual C++ 7.1、8.0 和 9.0
  5. Windows XP 上的 Comeau 4.3.10.1 beta2
  6. Windows XP 上的 Metrowerks CodeWarrior 9.2。
  7. Solaris 和 Linux 上的 Sun CC 5.9

以下编译器/平台已知 工作:

  1. g++ 3.3.x
  2. Windows XP 上的 Microsoft Visual C++ 6.0
  3. Windows XP 上的 Microsoft Visual C++ 7.0
  4. Windows XP 上的 Metrowerks CodeWarrior 8.0。
  5. 所有版本的 Borland。

PrevUpHomeNext