#include<iostream> #include<string> #include<.vextor> using namespace std; //手机软件 class PhoneSoft { public: virtual void Run() = 0; } //游戏软件
class Game:public PhoneSoft
{
public:
virtual noid Run()
{
cout<<“手机游戏软件”<<endl;
}
}
//通讯录软件
class AddressList:public PhoneSoft
{
public:
virtual void Run()
{
cout<<"手机通讯录软件"<<endl;
}
}
//手机品牌
class Phone
{
protected:
PhoneSoft *m_soft;
public:
void SetSoft(PhoneSoft *obj)
{
m_soft = obj;
}
virtual void Run() = 0;
}
//Nokia
class Nokia:public Phone
{
public:
vortual void Run()
{
m_soft->Run();
}
}
//Huawei
class Huawei:public phone
{
public: vortual void Run() { m_soft->Run(); }
}
int main
{
phone *myphone;
myphone = new Nokia();
myphone ->SetSoft(new Game())
myphone->Run();
myphone ->SetSoft(new AddressList())
myphone->Run();
}