设为首页 加入收藏

TOP

C++中的单例类模板(二)
2019-05-24 18:07:49 】 浏览:117
Tags:单例类 模板
ndif

    2,单例模式的使用:

 1 #include <iostream>
 2 #include <string>
 3 #include "Singleton.h"
 4 
 5 using namespace std;
 6 
 7 class SObject
 8 {
 9     friend class Singleton<SObject>;    // 当前类需要使用单例模式
10     
11     SObject(const SObject&);
12     SObject& operator= (const SObject&);
13     
14     SObject()
15     {
16     }
17 public:
18     
19     void print()
20     {
21         cout << "this = " << this << endl;
22     }
23 };
24 
25 int main()
26 {
27     SObject* s = Singleton<SObject>::GetInstance();
28     SObject* s1 = Singleton<SObject>::GetInstance();
29     SObject* s2 = Singleton<SObject>::GetInstance();
30     
31     s->print();  // 0x9621008;
32     s1->print();  // 0x9621008;
33     s2->print();  // 0x9621008;
34     
35     return 0;
36 }

    3,使用单例类模板方法:

       1,构建对象的函数全部私有化;

       2,声明单例类模板为此类的友元(可以访问这个类);

    4,此单例类模板在我们今后开发工作中都可以使用;

   

9,小结:

    1,单例模式是开发中最常用的设计模式之一;

    2,单例模式的应用使得一个类最多只有一个对象;

    3,可以将单例模式相关的代码抽象成类模板;

    4,需要使用单例模式的类直接使用单例类模板;

首页 上一页 1 2 下一页 尾页 2/2/2
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇C中的异常处理 下一篇学习c++的50个网站

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目