6

C++1x 支持文字后缀(cmp。例如http://ecn.channel9.msdn.com/events/GoingNative12/GN12Cpp11Style.pdf)。我正在使用 gcc 4.7 并想为我们的系统介绍一些单元。最值得注意的是,我们一半的代码使用度数,另一半使用弧度(由于各种 3rd 方库),显然这总是导致错误的原因。能够说例如“弧度角= 90_deg;” 会很有帮助的。

我已经研究了如何实现这一点,它看起来是可行的,但是需要一些时间才能使一切正确。所以我想知道是否有一个已经完成/测试过的实现已经实现了所有可以使用的东西(不需要每个 C++ 开发人员重新实现它,是吗?)。除了弧度/度,我还在寻找长度测量值(毫米、厘米、米)。我已经用谷歌搜索了,但没有找到任何可用的东西。

有人知道例如可以使用的 SI 系统的实现吗?

4

1 回答 1

2

使用boost.units

您将获得预期的好处:能够安全地处理以不同单位表示的指标。
使用 boost 单元的语法还不错:

quantity<length>    dx(2.0*meter);
于 2012-11-13T15:09:43.757 回答