Sphere: Related Content
#include <iostream>
using namespace std;
class CSingleton {
public:
static CSingleton &GetInstance();
void showMesg()
{
cout << "Hi This is Sujit Das" << endl;
}
#if 1
protected:
// need default ctor for GetInstance.
// ctor is protected, not private in case you want to derive.
CSingleton() { }
//CSingleton(const CSingleton& o) { }
CSingleton& operator=(const CSingleton& o) {cout << "Assignment operator" << endl; }
#endif
#if 0
private:
CSingleton() { }
CSingleton(const CSingleton& o) { }
//CSingleton& operator=(const CSingleton& o) { }
#endif
};
CSingleton& CSingleton::GetInstance() {
static CSingleton theInstance; // one-and-only instance
return theInstance;
}
main()
{
// These lines will not compile:
CSingleton x = CSingleton::GetInstance(); // error: private copy ctor!
x.showMesg();
CSingleton y = CSingleton::GetInstance(); // error: private copy ctor!
y.showMesg(); // error: private assignment!
CSingleton z = x;
z.showMesg();
}
Music icon Sting to perform in Singapore this September
-
The 73-year-old will be playing at Arena @ Expo on Sep 23.
1 hour ago
No comments:
Post a Comment