Singleton is a most widely used design pattern. If a class has and only has one instance at every moment, we call this design as singleton. For example, for class Mouse (not a animal mouse), we should design it in singleton.
You job is to implement a getInstance
method
for given class, return the same instance of this class every time you call this method.
In Java:
A a = A.getInstance();
A b = A.getInstance();
定義一個靜態變量來解決:
class Solution {
public:
/**
* @return: The same instance of this class every time
*/
static Solution* instance;
static Solution* getInstance() {
if (instance == NULL) {
instance = new Solution();
}
return instance;
}
};
Solution* Solution::instance = NULL;