WEB开发网
开发学院软件开发VC 单件模式之土著人的可乐瓶 阅读

单件模式之土著人的可乐瓶

 2008-08-09 19:26:13 来源:WEB开发网   
核心提示:本文示例源代码或素材下载 话说一群土著人生活地球的某个不为人知的地方,他们过着和谐、快乐的日子,单件模式之土著人的可乐瓶,但是好景不长,一只从天上掉下来的玻璃瓶打破了这美好的时光,假设他只用玻璃瓶砸地瓜:class A//土著人A{public:void UseBottle(){CGlassBottle::On

本文示例源代码或素材下载

话说一群土著人生活地球的某个不为人知的地方,他们过着和谐、快乐的日子。但是好景不长,一只从天上掉下来的玻璃瓶打破了这美好的时光。这只玻璃瓶用处非常广泛,有的土著人用它来砸地瓜,有的用它来吹口哨,有的用它来擀蛇皮……,渐渐地大家干活、娱乐都离不开它了,于是产生了争抢使用可乐瓶的情况,为了获得原有的和谐气氛,一个土著人决定扔掉这个瓶子……

剧情讲完了,我们先为这个瓶子定义一个类:class CGlassBottle 
{
private:
  CGlassBottle();
public:
  virtual ~CGlassBottle();
public:
  static BOOL OnKnock();//砸
  static BOOL OnBlow();//吹
  static BOOL OnRoll();//擀
protected:
  static BOOL s_bUsed;//是否正在被使用
};
  我们定义一个土著人A类,假设他只用玻璃瓶砸地瓜:class A//土著人A
{
public:
  void UseBottle()
  {
    CGlassBottle::OnKnock();
  };
};
  我们再定义一个土著人B类,假设他只用玻璃瓶吹口哨:class B//土著人B
{
public:
  void UseBottle()
  {
    CGlassBottle::OnBlow();
  };
};
  现在我们定义土著人A、B类的对象,让他们执行UseBottle:int main(int argc, char* argv[])
{
  A a;
  B b;
  a.UseBottle();//执行Knock
  b.UseBottle();//执行blow
  return 0;
}
我们来执行一下,看看结果:

单件模式之土著人的可乐瓶

1 2  下一页

Tags:单件 模式 土著人

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接