Vraptor Postado Abril 1, 2006 Denunciar Share Postado Abril 1, 2006 Boa dia pessoal.Estou com dificuldade em resolver esta saida de erro que meu compilador está me informando.Segue:#include "stdafx.h"#include <iostream>using namespace std;class Esposa; class Marido { public: Marido(char *, float, float); ~Marido(); friend void Exibe(Marido, Esposa); private: char Nome1[10]; float Salario1; float Inss1; };class Esposa { public: Esposa(char *, float, float); ~Esposa(); friend void Exibe(Marido, Esposa); private: char Nome2[10]; float Salario2; float Renda2; };int main(){ Marido Homen("Fernando", 300.00, 500.00); Esposa Mulher("Suely", 300.00, 0.00); Exibe( Homen, Mulher); cout << "\n\n\n"; system("Pause"); return 0;}Marido::Marido(char Nome11, float Salario11, float Inss11){ strcpy(Nome1, Nome11); Salario1 = Salario11; Inss1 = Inss11;}Marido::~Marido(){ cout << "\n\nDestruindo Marido !";}Esposa::Esposa(char Nome22, float Salario22, float Renda22){ strcpy(Nome2, Nome22); Salario2 = Salario22; Renda2 = Renda22;}Esposa::~Esposa(){ cout << "\n\nDestruindo Esposa !";}void Exibe(Marido H1, Esposa M1){ cout << "Nome: " << H1.Nome1 << endl; cout << "Salario: " << H1.Salario1 << endl; cout << "INSS: " << H1.Inss1 << endl; cout << "Nome: " << M1.Nome2 << endl; cout << "Salario: " << M1.Salario2 << endl; cout << "Renda menssal do casa: " << H1.Nome1 << " e " << M1.Nome2 << " :R$ "; M1.Renda2 = H1.Salario1 - H1.Inss1 + M1.Salario2; cout << M1.Renda2 << endl; }O compilador:Compiling...friend01.cpp\friend01.cpp(46) : error C2511: 'Marido::Marido(char,float,float)' : overloaded member function not found in 'Marido'\friend01.cpp(10) : see declaration of 'Marido'\friend01.cpp(58) : error C2511: 'Esposa::Esposa(char,float,float)' : overloaded member function not found in 'Esposa'\friend01.cpp(22) : see declaration of 'Esposa'alguém poderia dar uma pequena dica, não consigo encontrar o erro.Abraços Daniel. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Graymalkin Postado Abril 1, 2006 Denunciar Share Postado Abril 1, 2006 Você fez a declaração da classe e da implementação diferentes:Marido(char *, float, float); Esposa(char *, float, float); Marido::Marido(char Nome11, float Salario11, float Inss11) Esposa::Esposa(char Nome22, float Salario22, float Renda22)Note que o primeiro é char * e o segundo é somente char.Abraços,Graymalkin Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Vraptor Postado Abril 1, 2006 Autor Denunciar Share Postado Abril 1, 2006 Graymalkin !Outra vez !Valeu !Estava dormindo.Abraços, Daniel. Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
Vraptor
Boa dia pessoal.
Estou com dificuldade em resolver esta saida de erro que meu compilador está me informando.
Segue:
#include "stdafx.h"
#include <iostream>
using namespace std;
class Esposa;
class Marido
{
public:
Marido(char *, float, float);
~Marido();
friend void Exibe(Marido, Esposa);
private:
char Nome1[10];
float Salario1;
float Inss1;
};
class Esposa
{
public:
Esposa(char *, float, float);
~Esposa();
friend void Exibe(Marido, Esposa);
private:
char Nome2[10];
float Salario2;
float Renda2;
};
int main()
{
Marido Homen("Fernando", 300.00, 500.00);
Esposa Mulher("Suely", 300.00, 0.00);
Exibe( Homen, Mulher);
cout << "\n\n\n";
system("Pause");
return 0;
}
Marido::Marido(char Nome11, float Salario11, float Inss11)
{
strcpy(Nome1, Nome11);
Salario1 = Salario11;
Inss1 = Inss11;
}
Marido::~Marido()
{
cout << "\n\nDestruindo Marido !";
}
Esposa::Esposa(char Nome22, float Salario22, float Renda22)
{
strcpy(Nome2, Nome22);
Salario2 = Salario22;
Renda2 = Renda22;
}
Esposa::~Esposa()
{
cout << "\n\nDestruindo Esposa !";
}
void Exibe(Marido H1, Esposa M1)
{
cout << "Nome: " << H1.Nome1 << endl;
cout << "Salario: " << H1.Salario1 << endl;
cout << "INSS: " << H1.Inss1 << endl;
cout << "Nome: " << M1.Nome2 << endl;
cout << "Salario: " << M1.Salario2 << endl;
cout << "Renda menssal do casa: " << H1.Nome1 << " e "
<< M1.Nome2 << " :R$ ";
M1.Renda2 = H1.Salario1 - H1.Inss1 + M1.Salario2;
cout << M1.Renda2 << endl;
}
O compilador:
Compiling...
friend01.cpp
\friend01.cpp(46) : error C2511: 'Marido::Marido(char,float,float)' : overloaded member function not found in 'Marido'
\friend01.cpp(10) : see declaration of 'Marido'
\friend01.cpp(58) : error C2511: 'Esposa::Esposa(char,float,float)' : overloaded member function not found in 'Esposa'
\friend01.cpp(22) : see declaration of 'Esposa'
alguém poderia dar uma pequena dica, não consigo encontrar o erro.
Abraços Daniel.
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.