Я новичок в ООП и разрабатываю проект колледжа. У меня проблемы с распознаванием класса Matrix. Я уже искал информацию на этом форуме, но мне ничего не помогло. Может ли кто-нибудь помочь мне?
Я разделил код на несколько частей и протестировал его. Я удалил часть открытия файла и изменил ее на другую форму: вместо чтения из файла, который должен быть сделан с клавиатуры. Несмотря на это, он продолжает выдавать ошибку: «Матрица не называет тип» (в режиме чтения с клавиатуры) и «Ожидаемый конструктор, деструктор или преобразование типа перед '(" (в режиме чтения из файла). Кто-нибудь может мне помочь? Большое спасибо
Matriz.cpp
Matriz::Matriz()
{
Iniciar(1,1);
};
Matriz :: Ler(*ficheiro)
{
FILE *pfile; // Apontador para uma estrutura de um ficheiro
pfile = fopen(ficheiro, "r"); //Abertura do ficheiro em modo de leitura
if (pfile == NULL) //
return 0;
else
return 1;//
};
#pragma once
#include "Matriz.cpp"
// Definição da classe Matriz que contem as operações
// tipicas de matrizes
class Matriz {
private:
float **elems;
int linhas;
int colunas;
// Funções privadas
void Apagar();
void Iniciar(int nLinhas, int nColunas);
public:
Matriz();
// Construtor de defeito
Matriz(const Matriz& m1); // Construtor Copy
Matriz(int nLinhas, int nColunas);
~Matriz();
// Destrutor
bool PodeMultiplicar(const Matriz* pm);
bool PodeSomar(const Matriz* pm);
const Matriz& operator = (const Matriz& m1);
Matriz operator + (const Matriz& m1);
Matriz operator * (const Matriz& m1);
bool Ler(char* ficheiro);
void Escrever();
Matriz DecomporLU ();
};
#include "Matriz.h"
#include <stdio.h>
#include "Matriz.cpp"
int main()
{
Matriz m_A,m_B,m_R;
bool X,Z;
X = m_A.Ler("/home/magally/Desktop/Mat_A.txt");
Z = m_B.Ler("/home/magally/Desktop/Mat_B.txt");
if(X==0)
printf("ERRO.....");
else
printf("FICHEIRO ABERTO....");
//ficheiro aberto
}
Расширения Matrix.cpp, Matrix.h и Main.cpp являются отдельными
Мне нужно завершить чтение файла и указать класс Matriz для реализации других операций, которые я должен сделать.