前言:工厂模式是创建型设计模式,提供一种创建对象的方式。本文主要介绍简单工厂模式、工厂方法模式、抽象工厂模式。
简单工厂模式
该种模式由工厂对象决定创建哪一种产品类的实例,该工厂类可以直接被外部调用。
//简单工厂模式代码示例
#include<iostream>
#include<string>
using namespace std;
//产品抽象类
class Animal
{
public:
virtual void AnimalName() = 0;
};
//具体产品类1
class Bird :public Animal
{
public:
virtual void AnimalName()
{
cout << "AnimalName:Bird!" << endl;
}
};
//具体产品类2
class cat:public Animal
{
public:
virtual void AnimalName()
{
cout << "AnimalName:cat!" << endl;
}
};
//工厂类
class AnimalFactory
{
public:
static Animal* ProductAnimal(string iName)
{
i