私はC++の経験がほとんどまたはまったくないので、質問は奇妙に聞こえるかもしれません.問題は、float値を含むstd::vectorがあることです.float値を反復して抽出したい.
ベクトルの定義コードは次のようになります。
template <typename T, size_t feature_number>
T vector_distance(const boost::array<T, feature_number>& v1,
const boost::array<T, feature_number>& v2);
template <typename T = double, size_t feature_number=3>
class CLASSNAME
{
public:
typedef boost::array<T, feature_number> FeatureVector;
typedef std::vector<FeatureVector> Features;
...
私は次の方法でそれを使用しています:
FeatureTypeDTW::Features mfcc_features_a = METHODTHATRETURNSVECTOR();
for (int s = 0; s < (int) mfcc_features_a.size(); s++)
{
float MYFLOAT = mfcc_features_a[s];
}
しかし、私が得るコンパイルエラーは次のとおりです。
「boost::array (float, 7)」から「float」への実行可能な変換はありません
変換方法のヒントはありますか??