2016-04-28 1 views
0

У меня есть вопрос, заданный в прошлой статье, каков эффект добавления деструктора в Solo, который имеет инструкцию delete oneInstance в своей реализации.C++ Singleton Destructor - Эффект с удалением oneInstance

Что именно представляет собой эффект добавления delete oneInstance?

class Solo 
{ 
    public: 
      Solo* instance(); 
    private: 
      Solo(); 
      static Solo* oneInstance();  
} 
+2

У вас есть как минимум одна опечатка здесь и за ее пределами, мы понятия не имеем, как вы используете этот класс. Предоставьте [MCVE], а также сообщите нам, что произойдет, и что на самом деле произойдет, когда вы попробуете. –

+0

Простой ответ - избегайте одиночных игр, подобных чуме, и вам никогда не придется беспокоиться о своем поведении. С течением времени моя позиция по сиглетонам смещалась от «почти никогда не использовать», чтобы «никогда не использовать». – SergeyA

ответ

0

Я думаю, что вы получите нарушение доступа в конце своей программы. Предполагая, что экземпляр является статической переменной. Деструктор попытается удалить статическую переменную.