Intente diseñar una clase de animal CAnimal, que contenga atributos como edad y peso, y tenga la capacidad de correr, ladrar, crecer, clonar, etc. y derivar la clase de caballo Ch;
clase CAnimal
{
público:
CAnimal(){coutlt;lt;"Constructor de Animal"lt;lt; endl;};
virtual ~CAnimal(){coutlt;lt;"Destructor de animales"lt;lt;endl;};
void Run();
void Clone();
privado:
int m_age;
double m_weight;
};
clase CHAir
{
público:
std::string GetColor(){return this-gt;m_color;};
void SetColor(std::string str){this-gt;m_color = str;};
privado:
std::string m_color;
};
clase Chorse: public CAnimal
{
public:
Chorse(){coutlt;lt;"Constructor de caballo"lt;lt;endl;};
~Chorse(){coutlt;lt;"Destructor de caballo"lt;lt;endl;}
privado: p>
p>
CHair m_hair;//combinación
};
void main()
{
Chorse horse;/ /En este punto puedes ver el orden de construcción y destrucción
horse.m_hair; //Accede a las variables propias de la subclase
horse.Clone(); /Accede al método de herencia de la clase principal
}
Lo escribí palabra por palabra, espero que lo adoptes.