Насколько я помню неоднократно писалось:
Код: Выделить всё
MyObject &MyClass
code
MyObject &=new(MyClass)
Вопрос: зачем это нужно ?
Мое мнение: если по какой либо, абсолютно непонятной мне причине, объект не создастся, ну и черт с ним - здравствуй GPF. Если я обработаю проверку на NULL, т.е. буду знать - да действительно объект не создался - что мне дальше делать ? Писать мессагу для пользователя "Обратитесь к
разработчику" и вылетать по типо halt/stop ? А какая разница между моей мессагой и стд GPF ?
Почему возник вопрос: существует несколько объектов, которые необходимо последовательно создать, т.е.
Код: Выделить всё
MyObj1 &MyClass1
MyObj2 &MyClass2
MyObj3 &MyClass3
code
MyObj1 &= new MyClass1
if ~(MyObj1 &=NULL)
MyObj2 &= new MyClass2
if ~(MyObj2 &=NULL)
MyObj3 &= new MyClass3
if ~(MyObj3 &= NULL)
... и тут наконец таки мой код
end
end
end
не слишком ли много if ?
--
С уважением,
Still mailto:zero@clarionlife.net
а почему нельзя создать статические объекты?
в кларе меньше не сделаешь.не слишком ли много if ?
--
Best regards,
Maxim Yemelyanov,
Enigma Soft Company
phone: +380 572 177977
WEB: http://enigmasoft.com.ua
e-mail: clalist@enigmasoft.com.ua
ICQ: 12253836
Ник ваш зело соответствует теме вопроса, видать неспроста он родился

Проверять такие ситуации (проверка успешность создания после NEW) нужно только если хочешь точно знать место ошибки, запротоколировать например, или же ошибку создания такого объекта можно нормально обработать, например выдать мессагу и завершить процедуру. Вообще такое мало вероятно, только нехватка памяти, наверное.
Усиленно рекомендуется несколько иное, перед работой с рефералом проверить его на NULL. Он мог быть объявлен где-нить, а потом уничтожен или не инициализирован, вот такое гораздо более вероятно и выловить гораздо труднее, особенно если сырца нет, как в случае с RTL.
Удачи!
__________________________________
Владимир Якимченко (IСQ 16 993 194)
Написал: ClaList(2)