[с использованием C ++] Я знаю паттерн Singleton, где конструктор private
и есть указатель stati c на class
, возвращенный из какой-то функции static GetInstance()
. Но когда нужен класс с конструктором publi c, например:
//hpp file
class MyClass{
static MyClass * myptr;
public:
static const MyClass * GetInstance() { return myptr; }
MyClass() { myptr = this };
~MyClass() {}
...
}
//cpp file
MyClass * MyClass::myptr = nullptr;
Что происходит каждый раз, когда мы создаем новый объект с помощью конструктора? myptr
перезаписано? Каковы возможные варианты использования этого шаблона?