これは何度も聞かれていることは知っていますが、この問題を理解することはできません。これは私のヘッダーファイルです:
#ifndef TASK_H
#define TASK_H
#include "storage_adaptors.hpp"
#include <boost/numeric/ublas/vector.hpp>
class Task {
private:
boost::numeric::ublas::vector<double> taskPosistionConstraint;
boost::numeric::ublas::vector<double> initialPosition;
boost::numeric::ublas::vector<double> finalPosition;
double pathLength;
int taskType;
public:
Task();
Task(double* _initialPoint, double* _finalPoint, int type);
double getLength();
int getTaskType();
~Task();
};
#endif /* TASK_H */
これはcppファイルです:
#include "Task.h"
const int TASK_SIZE = 3;
Task::Task() {
}
Task::~Task() {
}
Task::Task(double* _initialPoint, double* _finalPoint, int type) {
finalPosition = make_vector_from_pointer(TASK_SIZE,_finalPoint);
initialPosition = make_vector_from_pointer(TASK_SIZE, _initialPoint);
}
エラーは、で定義されているmake_vector_from_pointer
関数で発生します。ヘッダーがクラスヘッダーファイルに追加されている場合、スコープ外エラーが発生するのはなぜですか。storage_adaptors.hpp
Task.h
boost hpp file
Task.cpp:21:エラー:`make_vector_from_pointer'はこのスコープで宣言されていません