joaoqalves Posted November 19, 2007 at 10:00 PM Report Share #148778 Posted November 19, 2007 at 10:00 PM Boas pessoal, estou a tentar fazer um programa com struct e funções e está-me a dar erro na função setnome(argumento) help please struct pessoa { public: //int getidade(); //int setidade(); //char * getnome(); int setnome(char *novonome); //int compra(float valor); //int AnoNascimento(); //int numcompras(); //float totalcompras(); private: int idade; char nome[60]; float compras[50]; int numcompras; } pessoa::setnome(char *novonome) { } Não peças ajuda por PM! A tua dúvida vai ter menos atenção do que se for postada na secção correcta do fórum!Queres estar na moda? Utiliza a pesquisa e evita criar um tópico desnecessário. Link to comment Share on other sites More sharing options...
shumy Posted November 19, 2007 at 10:03 PM Report Share #148781 Posted November 19, 2007 at 10:03 PM é sempre bom indicar o erro também, mas este vê-se logo que a assinatura da função na implementação não está igual como na definição. Falta o int, e se retorna int tem de existir um return. Aqui há coisa de 2 anos fazia umas malhas de croché, depois fartei-me e fui para informática! Link to comment Share on other sites More sharing options...
suzy Posted November 21, 2007 at 10:41 PM Report Share #149247 Posted November 21, 2007 at 10:41 PM 😛 boas!! mas queres usar um ponteiro?? normalmente faz-se assim Código struct pessoa { private://podes nao colocar mas por default e privado int idade; char nome[60];// aqui deveria ser string nome float compras[50]; int numcompras; public: pessoa(int ida, string n, float comp,int num);//contrutor para inicialiares as variaveis //int getidade(); //int setidade(); //char * getnome(); int setnome(char *novonome); void setnome(string nome);// assim //int compra(float valor); //int AnoNascimento(); //int numcompras(); //float totalcompras(); }; noutro ficheiro ,num ficheiro cpp void pessoa::setnome(string nome){ nome=n;// este n e do construtor } foi assim que aprendi e resulta. 😉 Link to comment Share on other sites More sharing options...
TheDark Posted November 22, 2007 at 01:30 AM Report Share #149292 Posted November 22, 2007 at 01:30 AM Algumas "inconsistências", por assim dizer: - a classe string da STL é uma classe muito útil, mas ele pode estar a utilizar char * por algum motivo. Por exemplo, não querer ou não poder utilizar string. - nas structs, a acessibilidade por omissão é public; - no método setnome, n não existe. Desaparecido. Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now