5Factory Method工厂方法模式文档格式.docx

上传人:b****3 文档编号:7554914 上传时间:2023-05-08 格式:DOCX 页数:9 大小:35.80KB
下载 相关 举报
5Factory Method工厂方法模式文档格式.docx_第1页
第1页 / 共9页
5Factory Method工厂方法模式文档格式.docx_第2页
第2页 / 共9页
5Factory Method工厂方法模式文档格式.docx_第3页
第3页 / 共9页
5Factory Method工厂方法模式文档格式.docx_第4页
第4页 / 共9页
5Factory Method工厂方法模式文档格式.docx_第5页
第5页 / 共9页
5Factory Method工厂方法模式文档格式.docx_第6页
第6页 / 共9页
5Factory Method工厂方法模式文档格式.docx_第7页
第7页 / 共9页
5Factory Method工厂方法模式文档格式.docx_第8页
第8页 / 共9页
5Factory Method工厂方法模式文档格式.docx_第9页
第9页 / 共9页
亲,该文档总共9页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

5Factory Method工厂方法模式文档格式.docx

《5Factory Method工厂方法模式文档格式.docx》由会员分享,可在线阅读,更多相关《5Factory Method工厂方法模式文档格式.docx(9页珍藏版)》请在冰点文库上搜索。

5Factory Method工厂方法模式文档格式.docx

//IHuman.h

#pragmaonce

classIHuman

{

public:

 

IHuman(void)

{

}

virtual~IHuman(void)

virtualvoidLaugh()=0;

virtualvoidCry()=0;

virtualvoidTalk()=0;

};

//YellowHuman.h

#include"

ihuman.h"

classCYellowHuman:

publicIHuman

CYellowHuman(void);

~CYellowHuman(void);

voidLaugh();

voidCry();

voidTalk();

//YellowHuman.cpp

StdAfx.h"

YellowHuman.h"

#include<

iostream>

usingstd:

:

cout;

endl;

CYellowHuman:

CYellowHuman(void)

}

~CYellowHuman(void)

voidCYellowHuman:

Cry()

cout<

<

"

黄色人种会哭"

<

endl;

Laugh()

黄色人种会大笑,幸福呀!

"

Talk()

黄色人种会说话,一般说的都是双字节"

//WhiteHuman.h

classCWhiteHuman:

CWhiteHuman(void);

~CWhiteHuman(void);

//WhiteHuman.cpp

WhiteHuman.h"

CWhiteHuman:

CWhiteHuman(void)

~CWhiteHuman(void)

voidCWhiteHuman:

白色人种会哭"

白色人种会大笑,侵略的笑声"

白色人种会说话,一般都是单字节"

//BlackHuman.h

classCBlackHuman:

CBlackHuman(void);

~CBlackHuman(void);

//BlackHuman.cpp

BlackHuman.h"

CBlackHuman:

CBlackHuman(void)

~CBlackHuman(void)

voidCBlackHuman:

黑人会哭"

黑人会笑"

黑人可以说话,一般人听不懂"

//IHumanFactory.h

IHuman.h"

classIHumanFactory

IHumanFactory(void)

virtual~IHumanFactory(void)

virtualIHuman*CreateHuman()=0;

ihumanfactory.h"

classCYellowHumanFactory:

publicIHumanFactory

CYellowHumanFactory(void);

~CYellowHumanFactory(void);

virtualIHuman*CreateHuman(void);

//YellowHumanFactory.cpp

YellowHumanFactory.h"

CYellowHumanFactory:

CYellowHumanFactory(void)

~CYellowHumanFactory(void)

IHuman*CYellowHumanFactory:

CreateHuman(void)

returnnewCYellowHuman();

classCWhiteHumanFactory:

CWhiteHumanFactory(void);

~CWhiteHumanFactory(void);

//WhiteHumanFactory.cpp

WhiteHumanFactory.h"

CWhiteHumanFactory:

CWhiteHumanFactory(void)

~CWhiteHumanFactory(void)

IHuman*CWhiteHumanFactory:

returnnewCWhiteHuman();

classCBlackHumanFactory:

CBlackHumanFactory(void);

~CBlackHumanFactory(void);

virtualIHuman*CreateHuman();

//BlackHumanFactory.cpp

BlackHumanFactory.h"

CBlackHumanFactory:

CBlackHumanFactory(void)

~CBlackHumanFactory(void)

IHuman*CBlackHumanFactory:

CreateHuman()

returnnewCBlackHuman();

//FactoryMethod.cpp

//FactoryMethod.cpp:

定义控制台应用程序的入口点。

//

stdafx.h"

SimpleHumanFactory.h"

StandardHumanFactory.h"

IHumanFactory.h"

string;

voidDoFactoryMethod1()

----------第一批人是这样的:

黄种人工厂来生产黄种人"

IHumanFactory*pHumanFactory=newCYellowHumanFactory();

IHuman*pHuman=pHumanFactory->

CreateHuman();

pHuman->

Cry();

Laugh();

Talk();

deletepHuman;

deletepHumanFactory;

voidDoFactoryMethod2()

----------第二批人是这样的:

白种人工厂来生产白种人"

IHumanFactory*pHumanFactory=newCWhiteHumanFactory();

voidDoFactoryMethod3()

黑种人工厂来生产黑种人"

IHumanFactory*pHumanFactory=newCBlackHumanFactory();

int_tmain(intargc,_TCHAR*argv[])

//工厂方法

----------工厂方法:

DoFactoryMethod1();

DoFactoryMethod2();

DoFactoryMethod3();

_CrtSetDbgFlag(_CRTDBG_LEAK_CHECK_DF|_CRTDBG_ALLOC_MEM_DF);

_CrtDumpMemoryLeaks();

return0;

工厂方法属于创建型模式,适合于产品不太多的情况。

产品如果很多,则需要用抽象工厂来实现。

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > IT计算机 > 电脑基础知识

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2