代码:
#include <iostream>
using namespace std;
class stock
{
public:
virtual void sell() = 0;
virtual void buy() = 0;
};
class stock1 : public stock
{
public:
void sell()
{
cout<<"stock1 sell"<<"\n";
}
void buy()
{
cout<<"stock1 buy"<<"\n";
}
};
class stock2 : public stock
{
public:
void sell()
{
cout<<"stock2 sell"<<"\n";
}
void buy()
{
cout<<"stock2 buy"<<"\n";
}
};
class fund
{
private:
stock1 gp1;
stock2 gp2;
public:
void sellFund()
{
gp1.sell();
gp2.sell();
}
void buyFund()
{
gp1.buy();
gp2.buy();
}
};
int main()
{
fund jijin;
jijin.buyFund();
jijin.sellFund();
return 0;
}
运行结果:
ngnsvr9 [** NONE **]/home/xionghailong/demo/facade $ g++ main.cpp -o main
ngnsvr9 [** NONE **]/home/xionghailong/demo/facade $ ./main
stock1 buy
stock2 buy
stock1 sell
stock2 sell