#include #include using namespace std; class pet //建立一个宠物类 { public: pet(int a=0,int h=0,int t=0,int m=0,int he=0,int st=15) //构造函数 {age=a;hunger=h;thirst=t;mood=m;health=he;step=st;} int geta() {return age;} //提取各个私有成员 int geth() {return hunger;} int gett() {return thirst;} int getm() {return mood;} int gethe() {return health;} int getst() {return step;} void p2(); //饥饿、口渴以及心情随时间的变化函数 void show(); //各个数值的输出函数 void emergency(int w); //各种特殊状态函数 void feed() //喂食函数 { hunger--; step=step-5; } void drink() {thirst--;step=step-3;} //喂水函数 void doctor() {step=step-10;} //看医生函数 void touch(int w); //抚摸函数 void fun(int w); //玩耍函数 virtual int getl() {return age;} //提取寿命值 virtual void action(int act,int w,int emg) {} //主人采取各种动作函数,定义为纯虚函数 private: int age; //年龄 int hunger; //饥饿值 int thirst; //口渴值 int mood; //心情指数 int health; //健康指数 int step; //行动点数 }; inline void pet::p2() //饥饿、口渴以及心情随时间的变化函数 { int m; m=rand()%15; if(m<5) mood=mood-2; else if(m<12) mood--; else mood++; age++; hunger=hunger++; thirst=thirst++; } inline void pet::show() //各个数值的输出函数 { cout<<"现在的状态:"<3) { mood=mood-2; health--; cout<<"再不给我吃东西,我就要饿死啦!"<