Chinaunix首页 | 论坛 | 博客
  • 博客访问: 41392
  • 博文数量: 17
  • 博客积分: 1432
  • 博客等级: 上尉
  • 技术积分: 165
  • 用 户 组: 普通用户
  • 注册时间: 2008-08-27 09:38
文章分类

全部博文(17)

文章存档

2011年(1)

2009年(16)

最近访客

分类: C/C++

2009-02-24 16:38:49

#include <string>
#include <iostream>
using namespace std;


class AbstractClass
{
public:
    virtual void PrimitiveOperation1() = 0;
    virtual void PrimitiveOperation2() = 0;

    void TemplateMethiod()
    {
        PrimitiveOperation1();
        PrimitiveOperation2();
        cout<<" "<<endl;
    }
};

class ComcreateClassA : public AbstractClass
{
public:
    virtual void PrimitiveOperation1()
    {
        cout<<"具体类A方法1实现"<<endl;
    }

    virtual void PrimitiveOperation2()
    {
        cout<<"具体类A方法2实现"<<endl;
    }
};

 class ComcreateClassB : public AbstractClass
 {
 public:
     virtual void PrimitiveOperation1()
     {
         cout<<"具体类B方法1实现"<<endl;
     }
 
     virtual void PrimitiveOperation2()
     {
         cout<<"具体类B方法2实现"<<endl;
     }
 };

int main(void)
{
    AbstractClass* c;

    c = (AbstractClass*)new ComcreateClassA();
    c->TemplateMethiod();

     c = (AbstractClass*)new ComcreateClassB();
     c->TemplateMethiod();
};

阅读(588) | 评论(0) | 转发(0) |
0

上一篇:没有了

下一篇:装饰模式(Decorator)_c++

给主人留下些什么吧!~~