SoloCodigo
Programación General => C/C++ => Mensaje iniciado por: neontiger88 en Lunes 4 de Febrero de 2008, 22:32
-
Hola qué tal? Primero que todo aprovecho para enviar un cordial saludo a todos los participantes de este increíble foro.
Soy novato en este lenguaje de C++, y pues estoy haciendo mis primeros programas, sólo que ahora resulta que pues este no se como resolverlo, al final me manda los siguientes errores:
[Linker error] undefined reference to `comida::getPeso()'
[Linker error] undefined reference to `comida::getGrasa()'
ld returned 1 exit status
El codigo es el siguiente:
#include <stdio.h>
#include <conio.h>
class comida
{
private:
int peso;
int grasa;
public:
int getPeso();
int getGrasa();
};
class Perro
{
private:
int edad;
int peso;
int hambre;
char sexo;
public:
void morir ();
void comer (comida c);
void ladrar ();
};
void Perro::ladrar()
{
printf ("Guau");
}
void Perro::comer (comida c)
{
hambre -= c.getPeso();
peso += c.getGrasa();
}
int main (void)
{
Perro firulais;
firulais.ladrar(); //Firulais ladra
getch();
}
Alguien podría indicarme/auxiliarme, decirme qué es lo que estoy haciendo mal?? Gracias anticipadas y hasta pronto!
-
Es que todavía no implementaste los métodos:
int comida::getPeso() y int comida::getGrasa()
-
Oye, muchas gracias!! ya implementé las "funciones" o no se como se llaman, métodos vdd?? y ya compiló, y corrió, ahora lo que no sé es como pasarle valores iniciales a getGrasa y a getPeso, jajaja! :D , gracias por tu solcuión me ayudó bastante!
-
Primero que nada, te recomiendo que te leas un buen libro de C++, porque las preguntas que estas haciendo son demasiado "basicas", tan basicas que sabrias la respuesta si hubieras leido un libro, pero bueno, respecto a tu pregunta, hay varias maneras de inicializar variables en una clase, lo mas comun es hacerlo en asignandole un valor en el constructor, si no sabes que es un constructor te repito de nuevo, debes de leer, leer, leer, en algun libro o curso sobre C++.
Saludos :)