c++关于继承和多态性的编程题,求大神带我飞

2025-04-16 06:01:02
推荐回答(1个)
回答1:

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; 

}