Главная страница


ru.perl

 
 - RU.PERL ----------------------------------------------------------------------
 From : Vyacheslav Ignatyuk                  2:5020/400     26 Oct 2000  17:59:00
 To : All
 Subject : Re: manual self destroying?!
 -------------------------------------------------------------------------------- 
 
 
 "Konstantin Osipov" <develop@interpro.ru> wrote in message
 news:8t8u3u$ogc$1@ddt.demos.su...
 
 > <привет>
 >
 > У меня есть класс Persistent, у которого есть метод die(). Этот метод
 > удаляет объект из базы данных. Также его задача уничтожить реальный
 
 объект,
 
 > чтобы никто, не дай бог, не вызвал save() для несуществующего объекта,
 > поэтому die() вызывает DESTROY.
 > Hо пока хоть одна ссылка на объект не вышла out of scope, объект не
 > физически не уничтожается!-(
 >
 > Пусть есть такого рода код:
 >
 > my $o = new Object; # возвращает blessed reference
 > $o->die();
 >
 > $o->save if $o; # save - вызывается!
 >
 > Как сделать, чтобы $o не было определено? $o = $o->die(); поможет лишь
 > отчасти (нельзя же убить все возможные ссылки на $o).
 
 Можно. И нужно: undef $o; (после $o->die, конечно)
 
 Vyacheslav Ignatyuk
 -- 
 Отправлено через сервер Talk.Ru - http://www.talk.ru
 --- ifmail v.2.15dev5
  * Origin: Talk.Ru (2:5020/400)
 
 

Вернуться к списку тем, сортированных по: возрастание даты  уменьшение даты  тема  автор 

 Тема:    Автор:    Дата:  
 manual self destroying?!   Konstantin Osipov   26 Oct 2000 13:41:06 
 Re: manual self destroying?!   Vyacheslav Ignatyuk   26 Oct 2000 17:59:00 
 manual self destroying?!   Konstantin Osipov   27 Oct 2000 23:16:23 
Архивное /ru.perl/6488b0618588.html, оценка 2 из 5, голосов 10
Яндекс.Метрика
Valid HTML 4.01 Transitional