ли5_1

 avatar
unknown
c_cpp
4 years ago
1.1 kB
2
Indexable
#include <iostream>

using namespace std;

class Animal
{
public:
	Animal() = default;

	Animal(const string& classification, int limbs, int descendants)
		: Classification(classification),
		  Limbs(limbs),
		  Descendants(descendants)
	{
	}

	virtual ~Animal() = default;

	string Classification;
	int Limbs;
	int Descendants;

	virtual void Print()
	{
		cout << "Classification: " << Classification << endl
			<< "Limbs: " << Limbs << endl
			<< "Descendants: " << Descendants << endl;
	}
};

class Pet : public Animal
{
public:
	Pet(const string& nickName)
		: NickName(nickName)
	{
	}

	Pet(const string& classification, int limbs, int descendants, const string& nickName)
		: Animal(classification, limbs, descendants),
		NickName(nickName)
	{
	}

	~Pet() = default;

	string NickName;

	void Print() override
	{
		Animal::Print();
		cout << "NickName: " << NickName << endl;
	}
};

int main()
{
	auto animal = new Pet("mamals", 4, 2, "Pussy");
	animal->Print();
	delete animal;
	std::cout << "Hello World!\n";
	return 0;
}
Editor is loading...