boost.units中单位的转换因子
conversion factor for units in boost.units
我刚刚开始使用Boost-units,我试图了解我应该编写的代码以获取单位之间的转换因子。在运行时单元示例之后,我设法获得了base_units所需的东西。
作为一个例子,我可以轻松地将转换因子从英寸到米的转换因子如下:
conversion_factor(imperial::inch_base_unit::unit_type(), si::meter_base_unit::unit_type())
这最终使我可以根据需要定义尽可能多的缩放单元,并获得所有所需的转换因子。
例如,在速度的情况下,在相关标头中被声明为"米_per_second"单元,我无法弄清楚如何检索转换因子以将其转换为kmh或mph。我想我需要定义自己的MPH单元,这导致需要定义(或检索)里程和小时的定义,并将它们全部放在一起。我应该如何实现所需的结果?
我设法在boost用户邮件列表存档(此处)
中找到了一个相关示例#include <boost/units/base_units/us/mile.hpp>
#include <boost/units/base_units/metric/hour.hpp>
typedef boost::units::us::mile_base_unit::unit_type mile_unit;
typedef boost::units::metric::hour_base_unit::unit_type hour_unit;
typedef boost::units::divide_typeof_helper<mile_unit, hour_unit>::type miles_per_hour;
正确声明了单元后,可以调用 Conversion_Factor 函数以获取我需要的东西。
相关文章:
- 防止主数据类型C++的隐式转换
- 模板参数替换失败,并且未完成隐式转换
- 用户定义的转换顺序(以C++为单位)
- 以C++为单位将毫秒转换为小时:分钟:秒:毫秒
- 以秒为单位将时间从纪元转换为一年中的某一天?
- 这里怎么了?单位转换器
- put_time具有转换说明符,该转换指定符,该指定符在一个月的单个数字上输出没有前面字符的单位天数
- 以部门为单位的类型转换
- 以C++为单位将每 5 位转换为整数值
- 用户定义的类型 - 单位、转换
- boost.units中单位的转换因子
- 单位从脚转换为米
- 在 C++ 中以毫秒为单位将日期转换为时间
- 从毫米到公里的转换(以较小的单位溢出,例如米)
- 以C++为单位键入矢量转换
- 将 Unix 时间戳(以毫秒为单位)转换为正常日期
- 将FILETIME转换为便携式时间单位
- 如何使用boost::units添加自己的基本单位和转换
- 在QSqlTableModel中为UI值做单位转换
- 将时间戳(以毫秒为单位)转换为boost中的时区