class Pet
{
public:
Pet(string c="",float w=0,int a=0):color(c),weight(w),age(a){}
string getColor(){return color;}
virtual void speak()=0; //纯虚函数
private:
string color;
float weight;
int age;
};
class Dog : public Pet
{
public:
Dog(string c,float w,int a):Pet(c,w,a){}
void speak()
{
cout<}
};
class Cat : public Pet
{
public:
Cat(string c,float w,int a):Pet(c,w,a){}
void speak()
{
cout<}
};
int main(){
Pet *p=0;
Dog d("黄",10,2);
Cat c("花",1.5,3);
p=&d;p->speak();
p=&c;p->speak();
return 0;
}