Re[2]: Один за всех
От: -MyXa- Россия  
Дата: 29.09.05 15:30
Оценка:
Здравствуйте, Коваленко Дмитрий, Вы писали:

КД>Здравствуйте, -MyXa-, Вы писали:


MX>>Вот только объект value болтается в памяти до самого завершения приложения, а хотелось бы, чтоб он уничтожался как только нет ни одного из SomeClass.


КД>Народ ленивый пошел, думать не хочет


КД>
КД>class SomeClass
КД>{
КД> private:
КД>  static SomeOtherClass* value; //инициализируется NULL-ом
КД>  static int sm_cnt; //инициализируется нулем

КД> public:
КД>  SomeClass()
КД>  {
КД>   if((sm_cnt++)==0)
КД>    value=new SomeOtherClass()
КД>  }

КД> ~SomeClass()
КД>  {
КД>   if((--sm_cnt)==0)
КД>   {
КД>    delete value;
КД>    value=NULL;
КД>   }
КД>  }
КД>};//SomeClass
КД>

КД>Про многопоточность я тоже думать не хочу

И про конструктор копии Вы тоже не хотите подумать?
Если не поможет, будем действовать током... 600 Вольт (C)
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.