帮我看看单例模式有啥问题?
#include <memory>
#include <iostream>
using namespace std;
template<class T>
class Singleton
{
public:
static T *Instance()
{
if(instance_.get() == NULL)
instance_.reset(new T);
return instance_.get();
}
virtual ~Singleton(){}
protected:
Singleton(){}
private:
static std::auto_ptr<T> instance_;
};
template<class T>
std::auto_ptr<T> Singleton<T>::instance_;
class T : protected Singleton<T>
{
public:
void print(){cout << "this is a stest" << endl; }
};
int _tmain(int argc, _TCHAR* argv[])
{
T t; // 这样竟然能运行通过
t.print();
// T::Instance()->print();
return 0;
}
#include <iostream>
using namespace std;
template<class T>
class Singleton
{
public:
static T *Instance()
{
if(instance_.get() == NULL)
instance_.reset(new T);
return instance_.get();
}
virtual ~Singleton(){}
protected:
Singleton(){}
private:
static std::auto_ptr<T> instance_;
};
template<class T>
std::auto_ptr<T> Singleton<T>::instance_;
class T : protected Singleton<T>
{
public:
void print(){cout << "this is a stest" << endl; }
};
int _tmain(int argc, _TCHAR* argv[])
{
T t; // 这样竟然能运行通过
t.print();
// T::Instance()->print();
return 0;
}
...全文
相关推荐
5-实验指导书_PID控制算法.docx
5-实验指导书_PID控制算法.docx
高校技术转移办公室人员如何利用平台提升技术成果的精准推介效率?.docx
高校技术转移办公室人员如何利用平台提升技术成果的精准推介效率?
产业园区运营负责人如何精准对接企业技术需求与科技成果?.docx
科易网基于40亿+科创知识图谱数据库,深度探索AI技术在技术转移、成果转化、技术经纪、知识产权、产业创新、科技招商等垂直领域的多样化应用场景,研究科技创新领域的AI+数智化解决方案,推动科技创新与产业创新智能化发展。
产业园区运营负责人如何通过平台实现对入驻企业的创新能力评估与服务匹配?.docx
科易网基于40亿+科创知识图谱数据库,深度探索AI技术在技术转移、成果转化、技术经纪、知识产权、产业创新、科技招商等垂直领域的多样化应用场景,研究科技创新领域的AI+数智化解决方案,推动科技创新与产业创新智能化发展。
《Hive数据仓库应用教程》教学大纲+课件+数据库+源代码+习题答案
《Hive数据仓库应用教程》教学大纲+课件+数据库+源代码+习题答案


