Ir ao conteúdo
  • Comunicados

    • Gabriel Torres

      Seja um moderador do Clube do Hardware!   12-02-2016

      Prezados membros do Clube do Hardware, Está aberto o processo de seleção de novos moderadores para diversos setores ou áreas do Clube do Hardware. Os requisitos são:   Pelo menos 500 posts e um ano de cadastro; Boa frequência de participação; Ser respeitoso, cordial e educado com os demais membros; Ter bom nível de português; Ter razoável conhecimento da área em que pretende atuar; Saber trabalhar em equipe (com os moderadores, coordenadores e administradores).   Os interessados deverão enviar uma mensagem privada para o usuário @Equipe Clube do Hardware com o título "Candidato a moderador". A mensagem deverá conter respostas às perguntas abaixo:   Qual o seu nome completo? Qual sua data de nascimento? Qual sua formação/profissão? Já atuou como moderador em algo outro fórum, se sim, qual? De forma sucinta, explique o porquê de querer ser moderador do fórum e conte-nos um pouco sobre você.   OBS: Não se trata de função remunerada. Todos que fazem parte do staff são voluntários.
    • DiF

      Poste seus códigos corretamente!   21-05-2016

      Prezados membros do Fórum do Clube do Hardware, O Fórum oferece um recurso chamado CODE, onde o ícone no painel do editor é  <>     O uso deste recurso é  imprescindível para uma melhor leitura, manter a organização, diferenciar de texto comum e principalmente evitar que os compiladores e IDEs acusem erro ao colar um código copiado daqui. Portanto convido-lhes para ler as instruções de como usar este recurso CODE neste tópico:  
DiegoPaiva

RESOLVIDO Erro compilação TAD / C++

Recommended Posts

Bom dia pessoal, estou fazendo um programa simples que consiste em ler o nome, matricula, 7 notas diferentes de um aluno e depois fazer sua media, a partir da criação de classes e suas operações. Porém estou encontrando um erro que não consigo saber o porquê dele, gostaria que se possivel me ajudassem:

 

Arquivo Aluno.h, onde esta a classe:

#include <iostream>#include <string>using namespace std;class Aluno{private:    string nome, matricula;    double notas[7];public:    Aluno(string n, string m);    ~Aluno();    void leNotas();    double calculaMedia();};

Arquivo Aluno.cpp, operações:

#include <iostream>#include "Aluno.h"#include <string>using namespace std;Aluno::Aluno(string n, string m){    nome = n;    matricula = m;}void Aluno::leNotas(){    for(int i = 0; i < 7; i++)    {        cout << "Digite a nota " << i+1 << " do aluno:" << endl;        cin >> notas[i];    }}double Aluno::calculaMedia(){    double media, soma = 0.0;    for(int i = 0; i < 7; i++)    {        soma += notas[i];    }    media = soma/7;    return media;}

E agora o erro que se encontra no main.cpp:

#include <iostream>#include "Aluno.h"#include <string>using namespace std;int main(){    string a, b;    cout << "Digite o nome do aluno: ";    cin >> a;    cout << "\nDigite a matricula do aluno: ";    cin >> b;    Aluno aka(string a, string ;    aka.leNotas();    cout << "Media = " << aka.calculaMedia() << endl;    return 0;}

Nas linhas 15 e 16 aparecem os seguintes erros respectivamente:

 

15 >  request for member 'leNotas' in 'aka', which is of non-class type 'Aluno(std::string, std::string) {aka Aluno(std::basic_string<char>, std::basic_string<char>)}'|

16 > request for member 'calculaMedia' in 'aka', which is of non-class type 'Aluno(std::string, std::string) {aka Aluno(std::basic_string<char>, std::basic_string<char>)}'|
 
 
 
 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Aluno.h
 

#include <iostream>#include <string>using namespace std;class Aluno {private:  string nome, matricula;  double notas[7];public:  Aluno();  ~Aluno();  Aluno(string n, string m);  void leNotas();  double calculaMedia();};

Aluno.cpp
 

#include <iostream>#include "Aluno.h"#include <string>Aluno::Aluno(string n, string m) {  nome = n;  matricula = m;}void Aluno::leNotas() {  for(int i = 0; i < 7; i++) {    cout << "Digite a nota " << i+1 << " do aluno:" << endl;    cin >> notas[i];  }}double Aluno::calculaMedia() {  double media, soma = 0.0;  for(int i = 0; i < 7; i++) {    soma += notas[i];  }  media = soma/7;  return media;}Aluno::~Aluno(){  // delete é utilizado}

mian.cpp
 

#include "Aluno.cpp"int main() {  string a, b;  cout << "Digite o nome do aluno: ";  cin >> a;  cout << "\nDigite a matricula do aluno: ";  cin >> b;  Aluno aka( a, ;  aka.leNotas();  cout << "Media = " << aka.calculaMedia() << endl;  return 0;}

Compartilhar este post


Link para o post
Compartilhar em outros sites
  • Autor do tópico
  • Obrigado, após colocar o destrutor e retirar o tipo na criação do objeto funcionou!

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites

    Crie uma conta ou entre para comentar

    Você precisar ser um membro para fazer um comentário






    Sobre o Clube do Hardware

    No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas publicações sobre tecnologia do Brasil. Leia mais

    Direitos autorais

    Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

    ×