No tienes acceso a esta clase

隆Contin煤a aprendiendo! 脷nete y comienza a potenciar tu carrera

Herencia

13/16
Recursos

Aportes 7

Preguntas 1

Ordenar por:

Los aportes, preguntas y respuestas son vitales para aprender en comunidad. Reg铆strate o inicia sesi贸n para participar.

Private: son aquellos que son visibles solo para las clases a las que pertenecen.
Protected: son aquellos que son visibles solo en las clases a las que pertenecen adem谩s de sus subclases

#include <iostream>
#include <string>

using namespace std;

class Animal{
private:
static int numero_animales;
string alimento;
public:
Animal();
~Animal();
static int obtenerNumeroAnimales();
string obtenerAlimento(){
return alimento;
}
void comer(){
cout<<"Este animal esta comiendo 鈥<< alimento << " 帽um帽um鈥<<endl;

}

};

int Animal::numero_animales=0;

Animal::Animal(){
cout << 鈥淐reando nuevo animal鈥︹<< endl;
numero_animales +=1;
}

Animal::~Animal(){
cout << 鈥淏orrando animal鈥︹<< endl;
numero_animales -=1;
}

int Animal::obtenerNumeroAnimales(){
return numero_animales;
}

int main(){

Animal *a = new Animal();

cout<< "Numero de Animales: "<< Animal::obtenerNumeroAnimales()<< endl;

a->comer();

delete a;

cout<< "Numero de Animales: "<< Animal::obtenerNumeroAnimales()<< endl;

}

j

j

#include <iostream>
#include <string>

using namespace std;

class Animal {
    protected:
        static int numeroAnimales;
        string alimento;
    public:
        Animal();
        ~Animal();
        static int obtenerNumeroAnimales();
        string obtenerAlimento() {
            return alimento;
        }
        void comer() {
            cout << "Este animal est谩 comiendo " << alimento << "... 帽om 帽om" << endl;
        }
};

int Animal::numeroAnimales = 0;

Animal::Animal() {
    cout << "Creando nuevo animal..." << endl;
    numeroAnimales += 1;
}

Animal::~Animal() {
    cout << "Borrando animal..." << endl;
    numeroAnimales -= 1;
}

int Animal::obtenerNumeroAnimales() {
    return numeroAnimales;
}

class Herviboro : public Animal {
    public:
        Herviboro() : Animal() {
            this->alimento = "plantas";
        }
        void pastar() {
            cout << "Este animal est谩 pastando..." << endl;
        }
};

class Carnivoro : public Animal {
    public:
        Carnivoro() : Animal() {
            this->alimento = "carne";
        }
        void cazar() {
            cout << "Este animal est谩 cazando..." << endl;
        }
};

int main() {
    Animal *a = new Animal();
    Herviboro *h = new Herviboro();
    Carnivoro *c = new Carnivoro();
    cout << "Numero de animales " << Animal::obtenerNumeroAnimales() << endl;
    a->comer();    
    h->pastar();
    c->cazar();
    delete a;
    cout << "Numero de animales " << Animal::obtenerNumeroAnimales() << endl;    
}

la clase Animal

#include <iostream>
#include <string>

using namespace std;

class Animal {
    private:
        static int numeroAnimales;
        string alimento;
    public:
        Animal();
        ~Animal();
        static int obtenerNumeroAnimales();
        string obtenerAlimento() {
            return alimento;
        }
        void comer() {
            cout << "Este animal est谩 comiendo " << alimento << "... 帽om 帽om" << endl;
        }
};

int Animal::numeroAnimales = 0;

Animal::Animal() {
    cout << "Creando nuevo animal..." << endl;
    numeroAnimales += 1;
}

Animal::~Animal() {
    cout << "Borrando animal..." << endl;
    numeroAnimales -= 1;
}

int Animal::obtenerNumeroAnimales() {
    return numeroAnimales;
}

int main() {
    Animal *a = new Animal();
    cout << "Numero de animales " << Animal::obtenerNumeroAnimales() << endl;
    a->comer();
    delete a;
    cout << "Numero de animales " << Animal::obtenerNumeroAnimales() << endl;
}
#include <iostream>
#include <conio.h>
#include <stdlib.h>
#include <string>
#include <locale.h>

using namespace std;
class Mounstro {
protected:
	static int numeroMounstros;
	string alimento;
public:
	Mounstro();
	~Mounstro();
	static int obtenerNumeroMounstros();
	string obtenerAlimento() {
		return alimento;
	}
	void comer() {
		cout << "Este mounstro est谩 comiendo " << alimento << " rico, rico " << endl;
	}
	
};

int Mounstro::numeroMounstros = 0;
Mounstro::Mounstro()
{
	cout << "Creando nuevo mounstro...." << endl;
	numeroMounstros += 1;
}
int Mounstro::obtenerNumeroMounstros()
{
	return numeroMounstros;
}
Mounstro::~Mounstro()
{
	cout << "borrando bicho...." << endl;
	numeroMounstros -= 1;
}
class Herviboro : public Mounstro{
public:
	Herviboro() : Mounstro() {
		this->alimento = "plantas";
}
	void pastar() {
		cout << "Este animal est谩 pastando... " << endl;
	}
};

class Carnivoro : public Mounstro {
public :
	Carnivoro() : Mounstro() {
		this->alimento = "carne";
	}
	void cazar() {
		cout << "Este animal est谩 cazando..." << endl;
	}
};



	int main() {
		setlocale(LC_ALL, "");

		Mounstro* m = new Mounstro();
		Herviboro* h = new Herviboro();
		Carnivoro* c = new Carnivoro();

		cout << "Numero de mounstros: " << Mounstro::obtenerNumeroMounstros() << endl;
		m->comer();
		h->pastar();
		c->cazar();
		delete m;
		cout << "Numero de mounstros: " << Mounstro::obtenerNumeroMounstros() << endl;
	getch();
};