C++工厂模式
【摘要】
C++ 的工厂模式
#define STACK_POS_TOP (0x0001)#define STACK_POS_INSIDE (0x0002) #define BEGIN_CELL_REGISTER \public: \ virtual CCell* GetCell(ul...
C++ 的工厂模式
#define STACK_POS_TOP (0x0001)
#define STACK_POS_INSIDE (0x0002)
#define BEGIN_CELL_REGISTER \
public: \
virtual CCell* GetCell(ulong ulCellID) \
{ \
switch(ulCellID) \
{
#define CELL_REGISTER(_CellID_, _CellClass_) \
case (_CellID_): \
{ \
CCell* pCell = new _CellClass_(); \
if(pCell) \
{ \
pCell->SetCellID(ulCellID); \
} \
return pCell; \
}
#define END_CELL_REGISTER \
default: \
break; \
} \
return NULL; \
} \
virtual UI_RESULT DeleteCell(CCell* pCell) \
{ \
delete pCell; \
return UI_SUCCESS; \
}
//工厂模式类
BEGIN_CELL_REGISTER
CELL_REGISTER(CELLID_BOOT, CCell_Boot)
END_CELL_REGISTER
文章来源: yujiang.blog.csdn.net,作者:鱼酱2333,版权归原作者所有,如需转载,请联系作者。
原文链接:yujiang.blog.csdn.net/article/details/54311422
【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)