⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 4elist1203.cpp

📁 《21天学通C++》附盘的原代码。书上的每个例子在这里都有相应的C语言程序。
💻 CPP
字号:
//Listing 12.3 Constructors and destructors called.

#include <iostream>
enum BREED { GOLDEN, CAIRN, DANDIE, SHETLAND, DOBERMAN, LAB };

class Mammal
{
public:
	// constructors
	Mammal();
	~Mammal();

	//accessors
	int GetAge() const { return itsAge; }
	void SetAge(int age) { itsAge = age; }
	int GetWeight() const { return itsWeight; }
	void SetWeight(int weight) { itsWeight = weight; }

	//Other methods
	void Speak() const { std::cout << "Mammal sound!\n"; }
	void Sleep() const { std::cout << "shhh. I'm sleeping.\n"; }


protected:
	int itsAge;
	int itsWeight;
};

class Dog : public Mammal
{
public:

	// Constructors
	Dog();
	~Dog();

	// Accessors
	BREED GetBreed() const { return itsBreed; }
	void SetBreed(BREED breed) { itsBreed = breed; }

	// Other methods
	void WagTail() const { std::cout << "Tail wagging...\n"; }
	void BegForFood() const { std::cout << "Begging for food...\n"; }

private:
	BREED itsBreed;
};

Mammal::Mammal():
itsAge(1),
itsWeight(5)
{
	std::cout << "Mammal constructor...\n";
}

Mammal::~Mammal()
{
	std::cout << "Mammal destructor...\n";
}

Dog::Dog():
itsBreed(GOLDEN)
{
	std::cout << "Dog constructor...\n";
}

Dog::~Dog()
{
	std::cout << "Dog destructor...\n";
}
int main()
{
	Dog fido;
	fido.Speak();
	fido.WagTail();
	std::cout << "Fido is " << fido.GetAge() << " years old\n";
	return 0;
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -