我正在尝试在代码中使用boost :: units来定义类型RoundsPerMinute。但是我并不真正理解如何做到这一点。
我通过
定义了一分钟using boost::units::si::seconds;
typedef boost::units::make_scaled_unit < boost::units::si::time, boost::units::scale<60, boost::units::static_rational<1> > >::type minute;
BOOST_UNITS_STATIC_CONSTANT(minutes, minute);
typedef boost::units::quantity<minute, float> Minute;
现在可以做到。
Minute m = 5*minutes;
我现在想要做的是
RoundsPerMinute rpm1 = 50 * rpm;
RoundsPerMinute rpm2 = 100 / (2*minutes);
Minute m = 1/rpm2; // how many minutes does it take for one round?
但我不确定如何定义这些类型 - 坦率地说,整个提升文档对我来说太技术化了解:-(如果有人可以帮我解决这些定义,那就太棒了。
答案 0 :(得分:2)
一个RPM只有1/60赫兹 - 见boost::units::si::hertz
。