?? 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 + -