5

我正在尝试在项目中使用 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;    
};

细节:

  • 提升 1.54.0
  • g++ 4.7.3
4

1 回答 1

4

我相信你需要包括这个:

#include <boost/units/quantity.hpp>

科利鲁

于 2013-11-18T13:37:45.673 回答