1

我在下面的标题中定义了一个新的derived_dimension 类型specific_entropy_dimension 和一个单位specific_entropy。这编译得很好,没有使用 g++ 的警告,但是,Eclipse CDT 的索引器无法解析类型并出现错误:

类型 'derived_dimension< length_base_dimension, 2, time_base_dimension, -2, temperature_base_dimension, -1 >::type' 无法解析

它是我代码中唯一的错误,我想解决这个问题,以便获得“干净”的分析。我需要做什么才能让 CDT 解决这种类型?

单位.h

#ifndef UNITS_H_
#define UNITS_H_

#include <boost/units/systems/si/energy.hpp>
#include <boost/units/systems/si/force.hpp>
#include <boost/units/systems/si/length.hpp>
#include <boost/units/systems/si/electric_potential.hpp>
#include <boost/units/systems/si/current.hpp>
#include <boost/units/systems/si/resistance.hpp>
#include <boost/units/systems/si/temperature.hpp>
#include <boost/units/systems/si/mass_density.hpp>
#include <boost/units/physical_dimensions/specific_energy.hpp>
#include <boost/units/systems/si/io.hpp>
#include <boost/units/conversion.hpp>
#include <boost/units/cmath.hpp>
#include <boost/units/derived_dimension.hpp>


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


typedef derived_dimension<length_base_dimension, 2, time_base_dimension, -2,
        temperature_base_dimension, -1>::type specific_entropy_dimension;


typedef ::boost::units::unit<specific_entropy_dimension, si::system> specific_entropy;


#endif /* UNITS_H_ */

请注意,我的标题包含更多派生维度,但这说明了问题。

4

0 回答 0