我需要将数量的值传递给图书馆进行评估。这升压单位库 http://www.boost.org/doc/libs/1_52_0/doc/html/boost_units.html在 SI 中采用双值,因此升压单位库在确保该要求方面非常有吸引力。但是,我应该如何将数量转换为双精度值?文档和示例似乎避免了这种情况,因为其目的是维护这些单元。
就像是:
quantity<pressure> p(101.1 * kilo * pascals);
double dblP = static_cast<double>(p); // double value in Pascals
浏览标题表明......这是转换为基本类型的正确方法吗?
p.value();
我想你正在寻找的是这样的:
quantity<pressure> p(101.1 * kilo * pascals);
double dblP = p / pascals; // double value in Pascals
如果你分割这个单位,你会剩下一个quantity<dimensionless>
这将隐式转换为double
。这消除了任何关于内部表示(即value()
回报)单位是。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)