Boost :: units :: quantity"不完整类型"错误

Dan*_*Dan 5 c++ templates boost boost-units

我试图在项目中使用boost :: units但遇到了麻烦.

我有一个模板类,它有一些quantity对象作为成员.在一个我希望存储一个压力维度的值,所以我已quantity<pressure> press;声明为成员变量.

但是,这会产生一个错误,指出quantity需要两个模板参数(源代码显示第二个模板参数应默认为double).如果我然后指定quantity<pressure,double> press;我而不是得到一个错误

  • 错误:字段'press'的类型不完整.

我做错了什么或者压力的实施有问题吗?

最小例子:

#include <boost/units/dimension.hpp>
#include <boost/units/systems/si/pressure.hpp>

using namespace boost::units;
using namespace boost::units::si;

struct MyClass
{
    quantity<pressure,double> press;    
};
Run Code Online (Sandbox Code Playgroud)

细节:

  • 提升1.54.0
  • g ++ 4.7.3

小智 4

我相信你需要包括这个:

#include <boost/units/quantity.hpp>
Run Code Online (Sandbox Code Playgroud)

科利鲁