Значение типа "Vector *" нельзя присвоить сущности типа "Vector *"
Реализую класс вектора в качестве задания по программированию в университете. Есть класс вектора
class Vector
{
private:
int size;
float *body;
public:
Vector();
Vector(int size, float val = 0);
Vector(const Vector &vec);
float& operator[] (int index);
Vector& operator= (const Vector vec);
}
И класс матрицы, которую я хочу реализовать через динамический список векторов (для удобной работы над строками)
class Matrix
{
private:
int size;
Vector *body;
public:
Matrix(int n, int m, float val = 0);
Matrix(const Matrix &vec);
}
При реализации конструктора матрицы
#include "matrix.h"
#include "vector.h"
#include <iostream>
using namespace std;
Matrix::Matrix(int n, int m, float val)
{
body = new Vector[n];
}
возникает ошибка "Значение типа "Vector *" нельзя присвоить сущности типа "Vector *"" Какие либо идеи, почему такое происходит, или может быть предложения, как это лучше реализовать? (без использования std::vector))
Ответы (1 шт):
Автор решения: Ytygok86
→ Ссылка
AlexGlebe был прав, проблема в циклическом #include, вопрос закрываю