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();
}
Pause in U.S. Weapons Deepens Ukrainian Concerns as Russian Attacks Grow
-
The suspension includes air defense interceptors, and it will directly
affect Ukraine’s ability to fend off escalating Russian air assaults.
59 minutes ago
No comments:
Post a Comment