Код: Выделить всё
//.h
class A{
private:
MyResource a;
private:
A(): a(...){}
~A(){ a.release(); }
private:
smart_pointer S_INSTANCE;
public:
static weak_ptr GetInstance() {return S_INSTANCE;}
}
//.cpp
smart_pointer A::S_INSTANCE = std::make_shared();
Я думаю, это потому, что интеллектуальные указатели хотят использовать конструктор и деструктор класса A.
/>Итак, вот мой вопрос:
1.Правильно ли то, что я думаю?
2.Есть ли какое-нибудь решение этой проблемы (все еще использовать умные указатели)?
Подробнее здесь: https://stackoverflow.com/questions/790 ... singletons