设计模式资料:http:///tags/%E8%AE%BE%E8%AE%A1%E6%A8%A1%E5%BC%8F/ 23种设计模式讲解:http://edu./course/426/lesson/list 1,单例模式的应用场景 (1),网站的计数器:记录访问量的次数 (2),web应用的配置管理器:管理多个应用的配置信息 (3),应用程序的日志管理系统:便于信息的维护和查阅 (4)数据库应用的连接池 (5),多线程应用的线程池 (7),操作系统的文件系统和打印假脱机 2,单例模式的实现 (1),借助于类型禁止在外部创建对象 私有构造函数:private (2),仅在类型内部创建唯一对象实例 类自己维护一个唯一的实例 静态成员变量:instance (3),提供用于获取对象实例的公知接口 提供访问该实例的方法 静态成员函数(静态函数类似全局,属于类,而不属于对象) getInstance(); (4),单例的实现模式 饿汉式实现 --优点:加载进程时,静态创建单例对象,线程安全 --缺点:无论使用与否,总要创建对象 总结:空间换时间,小对象,使用频繁时使用 实现方式: /Singleton.h #ifndef _SINGLETON_H_ #define _SINGLETON_H_ #include <iostream> using namespace std; class Singleton { public: static Singleton* Instance(); protected: Singleton(); private: static Singleton* _instance; }; #endif //~_SINGLETON_H_ //源文件 |
|