·什么是单例模式
单例模式,是一种常用的软件设计模式。在它的核心结构中只包含一个被称为单例的特殊类。通过单例模式可以保证系统中,应用该模式的一个类只有一个实例。即一个类只有一个对象实例。
·实现一个简单的单例
在我们平常写的代码中,经常是通过构造或者拷贝构造来实例化对象,就像下面这样:
class data
{
private:
int _year;
int _month;
int _day;
public:
data(int year, int month, int day)
{
_year = year;
_month = month;
_day = day;
}
data(const data &d)
{
_year = d._year;
_month = d._month;
_day = d._day;
}
void print(const data& data)
{
cout << _year << "--" << _month << "--" << _day;
cout << "\n";
}
};
很明显,这样的情况可以被两种方式实例化,那么有没有什么办法可以禁用上面两种方法来实例化一个对象呢?如果我们把构造函数写成private或者protected的呢:
class data
{
private: