//File:	Pets.cpp
#include <iostream>
using namespace std;

class housePet
{
public:
	virtual void speak() { cout << "huh?\n";}
};

class dog : public housePet
{
public:
	void speak() {cout << "woof\n";}
};

class cat : public housePet
{
public:
	void speak() {cout << "meow\n";}
};

class bird : public housePet
{
public:
	void speak() {cout << "chirp\n";}
};

int main()
{
	housePet* myHouse[3];
	
	dog Fido;
	cat Puff;
	bird Tweety;
	
	Fido.speak();
	Puff.speak();
	Tweety.speak();
	
	myHouse[0] = &Fido;
	myHouse[1] = &Puff;
	myHouse[2] = &Tweety;
	
	for (int i = 0; i < 3; i++)
		myHouse[i] -> speak();
	return 0;
}

