2.简单工厂模式
来源:互联网 发布:卫星影像数据 编辑:程序博客网 时间:2024/06/05 09:14
代码实现:
#include<iostream>#include<string>#include<assert.h>using namespace std;class Car{public:virtual ~Car(){}virtual void PrintName() {cout << "汽车生产厂商:" << name << endl;}protected:Car(){}Car(const string &name):name(name){}private:string name;};class GMCar:public Car{public:GMCar():Car("通用汽车公司"){}void PrintName(){cout << "GMCar Test\n";Car::PrintName();}};class FordCar:public Car{public:FordCar():Car("福特汽车公司"){}void PrintName(){cout << "FordCar Test\n";Car::PrintName();}};class CarFactory{public:static Car* CreatCar(const string &name){Car * car = NULL;if("GM" == name)car = new GMCar();else if("Ford" == name)car = new FordCar();elseassert(false);return car;}};int main(){Car *car = CarFactory::CreatCar("GM");car->PrintName();delete car;car = CarFactory::CreatCar("Ford");car->PrintName();delete car;return 0;}
0 0
- 2.简单工厂模式
- 2.简单工厂模式
- 2.简单工厂模式
- 2.工厂模式(简单工厂模式,工厂方法模式,抽象工厂模式)(设计模式笔记)
- 工厂模式-简单工厂
- 工厂模式-简单工厂
- 2.php简单工厂模式
- 工厂模式-简单工厂模式
- 工厂模式-简单工厂模式
- 简单工厂模式,工厂模式
- 工厂模式-简单工厂模式
- 简单工厂模式,工厂模式
- 设计模式------2.简单工厂模式
- 简单工厂、工厂模式、抽象工厂模式
- 简单工厂、工厂模式、抽象工厂模式
- 简单工厂&工厂模式&抽象工厂模式
- 简单工厂和工厂模式
- 简单工厂和工厂模式
- 区间覆盖问题 贪心
- sfgjsjsrj
- Font Awesome:图标字体,完全CSS控制
- 删除元素
- lua基础
- 2.简单工厂模式
- 打包H264码流到FLV文件
- guava有感
- 最少拦截系统 贪心
- C/C++上二维数组的两种动态分配内存方法
- Doing Homework again 贪心
- 第十八周项目1-3:删除首结点
- Lua源代码阅读(二)string的实现
- 使用真机调试时的问题。