模板方法模式Template Methond
来源:互联网 发布:程序员试用期个人总结 编辑:程序博客网 时间:2024/05/01 01:30
GOOD:把不变的代码部分都转移到父类中,将可变的代码用virtual留到子类重写
例:
#include<iostream>
#include <vector>
#include <string>
using namespace std;
class AbstractClass
{
public:
void Show()
{
cout<<"我是"<<GetName()<<endl;
}
protected:
virtual string GetName()=0;
};
class Naruto : public AbstractClass
{
protected:
virtual string GetName()
{
return "火影史上最帅的六代目---一鸣惊人naruto";
}
};
class OnePice : public AbstractClass
{
protected:
virtual string GetName()
{
return "我是无恶不做的大海贼---路飞";
}
};
//客户端
int main()
{
Naruto* man = new Naruto();
man->Show();
OnePice* man2 = new OnePice();
man2->Show();
return 0;
}
- 模板方法模式Template Methond
- 模板方法模式 - Template
- 【模板方法模式-template】
- 模板方法模式Template
- 工厂方法模式(Factory Methond)案例分析
- 模板方法模式(Template Method)
- Template Method - 模板方法模式
- 模板方法模式(Template Method)
- Template Methods 模板方法模式
- 模板方法(Template Method)模式
- Template Method (模板方法模式)
- 模板方法模式--Template Method
- Template Method模板方法模式
- 模板方法模式(Template Method)
- 【模板方法模式(Template Method)】
- 模板方法模式(Template method)
- Template Method - 模板方法模式
- 模板方法模式(Template Method)
- python中如何调用scp命令
- 单例模式(C#)
- linux下PostgreSQL安装设置
- NME的GLSL支持情况
- Oracle DB Upgrade & Migrate from Single 11.1.0.7 to Oracle 11.2.0.3 RAC by rconfig
- 模板方法模式Template Methond
- git 分支模型
- 在线流程图设计网站 processon 分析
- 技术抉择 – 为什么我们选择戴尔DRAC企业版?
- 归档Redis在Windows,linux平台下的安装配置
- Ubuntu下安装Android模拟器
- statfs获得硬盘使用情况 模拟linux命令 df
- 实例演示div+css的绝对定位和相对定位布局
- Foxmail的cvs导入Ubuntu Thunderbird的方法