loki factory的使用
来源:互联网 发布:网络销售的平台有哪些? 编辑:程序博客网 时间:2024/05/21 17:15
1.Loki的下载地址 http://sourceforge.net/projects/loki-lib/
2.把loki库考到自己的工程下
3.引入
详细代码:
#include <iostream>#include <string>#include "loki/Factory.h"#include "loki/Singleton.h"// 窗体基类struct IWidget{virtual void printName() = 0;virtual ~IWidget(){;}};// 定义窗体工厂,使用string区分各对象类型typedef Loki::Factory<IWidget, std::string> widget_factory_t;// 按钮窗体struct CButton : IWidget{void printName(){std::cout << "CButton" << std::endl;}};// 编辑框窗体struct CEdit : IWidget{void printName(){std::cout << "CEdit" << std::endl;}};// 列表框窗体struct CListBox : IWidget{void printName(){std::cout << "CListBox" << std::endl;}};int main(){// 工厂实例widget_factory_t wf;// 注册各种窗体的生成器,这里偷懒用了CreateUsingNew作为生成器wf.Register("Edit", Loki::CreateUsingNew<CEdit>::Create );wf.Register("Button", Loki::CreateUsingNew<CButton>::Create );wf.Register("ListBox", Loki::CreateUsingNew<CListBox>::Create );// 测试,使用工厂生成窗体{IWidget* pWid = wf.CreateObject("Edit");pWid->printName();delete pWid;}{IWidget* pWid = wf.CreateObject("ListBox");pWid->printName();delete pWid;}system("PAUSE");return 0;}
- loki factory的使用
- loki factory的使用 例二
- Loki 单键的使用
- Loki库的使用
- Factory Method模式示例(使用Loki类库)
- Loki 智能指针 SmartPtr 的使用
- Applying Abstract Factory Pattern: the Loki Way
- Loki库使用介绍
- 郁闷的Loki::SmartPtr
- Loki的SingletonHolder解析
- Loki的继承生成器
- loki
- Loki库使用(1)
- Loki库使用(1)
- Loki的名字和Andrei
- Loki的TypeList技术解析
- Visitor模式示例(使用Loki类库)
- 关于boost和loki的智能指针
- javascript 跨域总结
- 程序员技术练级攻略
- mpc.pl和 mwc.pl 学习。
- 写在大学的最后一个暑假
- 【Android 笔记 五】 Android Sensor感应器介绍(一)重力感应加速度获取
- loki factory的使用
- Linux 套接字编程中的 5 个隐患
- IE6 浮动元素与非浮动元素在一起,3px偏移BUG解决方案
- 刚开始学习iphone时可能用到的一些东西
- 将exchange服务器的数据迁移到domino服务器_lotus notes
- WIN7 下LINUX安装
- μC/OS-II(1)
- 苹果谷歌Interdigital专利争夺战由来
- LINUX下安装锐捷