zoukankan      html  css  js  c++  java
  • 单例模板类

    //单例模板类,C++11能保证函数中的静态成员线程安全

    template <typename T>

    class Singleton

    {

        T* value;

        void create_singleton()

        {

            static T t;

            value =&t;

        }

    public:

        Singleton():value(){

            create_singleton();

        }

        T* get_instance()

        {

            return value;

        }

    };

     

    //要实现的单例类写法

    class my_data

    {

    private :

        my_data():i(0)

        {

            i+=rand();

        }

        int i;

    public:

        friend class Singleton<my_data>;

    };

     

    //测试

    void test_singleton()

    {

        my_data* p =(Singleton<my_data>()).get_instance();

        my_data* p2 ((Singleton<my_data>()).get_instance());

        

        if(p == p2)

        {

            std::cout<<"same"<<std::endl;

        }

    }

  • 相关阅读:
    Android的消息机制
    AndroidVolley框架的使用
    Android事件分发机制浅谈(三)源码分析(View篇)
    Java 编程下简介 Class 与类加载
    [ZJOI2007]最大半连通子图
    [HNOI2012]永无乡
    [HEOI2016/TJOI2016]排序
    CSS 条件缩放图片
    CSS图片垂直居中
    最近写 ASP.NET 中出现的错误 & 实现DataTable和DataSet类型的客户端/服务器端自动转换
  • 原文地址:https://www.cnblogs.com/sofard/p/10450613.html
Copyright © 2011-2022 走看看