📄 abstractfacotry.cpp
字号:
#include "AbstractFacotry.h"
CAbstractFactory* CAbstractFactory::GetFactory(int i)
{
if(i==1)
return new CConcreteFactory1();
else if(i==2)
return new CConcreteFactory2();
else
return 0;
}
CProductA* CAbstractFactory::CreateProductA()
{
return 0;
}
CProductB* CAbstractFactory::CreateProductB()
{
return 0;
}
CProductA* CConcreteFactory1::CreateProductA()
{
return new CProductA1();
}
CProductB* CConcreteFactory1::CreateProductB()
{
return new CProductB1();
}
CProductA* CConcreteFactory2::CreateProductA()
{
return new CProductA2();
}
CProductB* CConcreteFactory2::CreateProductB()
{
return new CProductB2();
}
//==================usage of Abstract Factory:================================
void useAbstractFactory()
{
CAbstractFactory* pFactory=CAbstractFactory::GetFactory(2);
CProductA *pA=pFactory->CreateProductA();
CProductB *pB=pFactory->CreateProductB();
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -