Estou com dificuldade de criar classes em C++ Estou tendo dificuldades com acesso. Por favor vejam o projeto. Se puderem eliminar ao erros apontados agradeço
Criei o seguinte projeto o seguinte projeto
Arquivo metodoestatico.cpp
#include "metodoestatico.h"
//---------------------------------------------------------Arquivo main.cpp
int main ()
{
string linha = "--------------------------------------------------------------\n";
cout << "Entre com o número de alunos da disciplina (ex =3):";
int numeroAlunos;
cin >> numeroAlunos;
cin.get ();
//Cria um objeto do tipo TPessoa com nome professor
TPessoa professor;
//Cria um vetor de objetos alunos do tipo TPessoa
vector < TPessoa > aluno ( numeroAlunos);
cout << "Entre com o nome do professor: ";
getline (cin, professor.nome);
cout << "Entre com a matricula do professor: ";
getline (cin, professor.matricula);
for (int contador = 0; contador < aluno.size (); contador++)
{
cout << "Aluno " << contador << endl;
aluno[contador].Entrada ();
}
cout << linha;
cout << "RELAÇÃO DE PROFESSORES E ALUNOS : " << endl;
cout << linha;
cout << "Nome do professor: " << professor.nome << "\n";
cout << "Matricula : " << professor.matricula << "\n";
for (int contador = 0; contador < aluno.size (); contador++)
{
cout << linha;
cout << "Aluno " << contador << endl;
aluno[contador].Saida ();
}
cin.get ();
return 0;
}
// ---------------------------------------------------------Arquivo TAluno.h
// ---------------------------------------------------------Bibliotecas C/C++
#include <iostream>
#include <string>
#include <vector>
using namespace std;
// ---------------------------------------------------------Classe
/*
A classe TPessoa representa uma pessoa (um aluno ou um professor)
de uma universidade.
Tem um nome, uma matricula e um IAA.
E métodos básicos para entrada e saída de dados.
*/
class TPessoa
{
// ---------------------------------------------------------Atributos
private:
std::string nome;
std::string matricula;
float iaa;
private:
static int numeroAlunos;
public:
// ---------------------------------------------------------Métodos
//Método do objeto , altera as propriedades do objeto
//Leitura dos atributos (nome, matricula)
void Entrada ();
//Saida dos atributos ( nome, matricula, iaa)
void Saida () const;
//Um método estático só pode alterar atributos estáticos
static int GetnumeroAlunos ()
{
return numeroAlunos;
}
};
/*
// Atributo estático é aquele que pertence a classe e não ao objeto
//e precisa ser definido depois da classe
*/
//int TPessoa:: numeroAlunos = 0;
Pergunta
Castro
:(
Estou com dificuldade de criar classes em C++ Estou tendo dificuldades com acesso. Por favor vejam o projeto. Se puderem eliminar ao erros apontados agradeço
Criei o seguinte projeto o seguinte projeto
Arquivo metodoestatico.cpp
#include "metodoestatico.h" //---------------------------------------------------------Arquivo main.cpp int main () { string linha = "--------------------------------------------------------------\n"; cout << "Entre com o número de alunos da disciplina (ex =3):"; int numeroAlunos; cin >> numeroAlunos; cin.get (); //Cria um objeto do tipo TPessoa com nome professor TPessoa professor; //Cria um vetor de objetos alunos do tipo TPessoa vector < TPessoa > aluno ( numeroAlunos); cout << "Entre com o nome do professor: "; getline (cin, professor.nome); cout << "Entre com a matricula do professor: "; getline (cin, professor.matricula); for (int contador = 0; contador < aluno.size (); contador++) { cout << "Aluno " << contador << endl; aluno[contador].Entrada (); } cout << linha; cout << "RELAÇÃO DE PROFESSORES E ALUNOS : " << endl; cout << linha; cout << "Nome do professor: " << professor.nome << "\n"; cout << "Matricula : " << professor.matricula << "\n"; for (int contador = 0; contador < aluno.size (); contador++) { cout << linha; cout << "Aluno " << contador << endl; aluno[contador].Saida (); } cin.get (); return 0; }============================== Arquiivo metodoestático.h// ---------------------------------------------------------Arquivo TAluno.h // ---------------------------------------------------------Bibliotecas C/C++ #include <iostream> #include <string> #include <vector> using namespace std; // ---------------------------------------------------------Classe /* A classe TPessoa representa uma pessoa (um aluno ou um professor) de uma universidade. Tem um nome, uma matricula e um IAA. E métodos básicos para entrada e saída de dados. */ class TPessoa { // ---------------------------------------------------------Atributos private: std::string nome; std::string matricula; float iaa; private: static int numeroAlunos; public: // ---------------------------------------------------------Métodos //Método do objeto , altera as propriedades do objeto //Leitura dos atributos (nome, matricula) void Entrada (); //Saida dos atributos ( nome, matricula, iaa) void Saida () const; //Um método estático só pode alterar atributos estáticos static int GetnumeroAlunos () { return numeroAlunos; } }; /* // Atributo estático é aquele que pertence a classe e não ao objeto //e precisa ser definido depois da classe */ //int TPessoa:: numeroAlunos = 0;‘============================================== Arquivo Taluno.cpp#include "metodoestatico.h" int TPessoa::numeroAlunos = 0; //---------------------------------------------------------Arquivo TAluno.cpp // Definição dos métodos void TPessoa::Entrada () { cout << "Entre com o nome do aluno: "; getline (cin, nome); cout << "Entre com a matricula do aluno: "; getline (cin, matricula); cout << "Entre com o IAA do aluno: "; cin >> iaa; cin.get (); } void TPessoa::Saida () const { cout << "Nome do aluno: " << nome << endl; cout << "Matricula : " << matricula << endl; cout << "iaa : " << iaa << endl; }Erros: Esta caindo na linhado arquivo metodoestatico com as seguintes mensagens:
Obriigado
Link para o comentário
Compartilhar em outros sites
2 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.