Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.10.14;
Скачать: CL | DM;

Вниз

Как правильно уничтожать обьекты?   Найти похожие ветки 

 
alles ©   (2007-09-13 13:07) [0]

Добрый день.
1. Как правильно уничтожать обьект(xmlResponse) типа TXMLDocument?
Я создаю его так:
xmlResponse:=TXMLDocument.Create(nil);
Достаточно просто писАть: xmlResponse:=nil;
Или надо так:

if Assigned(xmlResponse) then
 begin
        xmlResponse.Free;
        xmlResponse:=nil;
 end;


 
Reindeer Moss Eater ©   (2007-09-13 13:14) [1]

В данном конкретном случае уничтожать вообще ничего не надо.
xmlResponse будет чисто интефейсной ссылкой и кильнется при выходе из области видимости.


 
Ksan ©   (2007-09-13 13:23) [2]

как рекомендция пользовать стандартную функцию FreeAndNil


if xmlResponse <> nil then
 FreeAndNil(xmlResponse);


 
alles ©   (2007-09-13 13:29) [3]

2 Reindeer Moss Eater ©   (13.09.07 13:14) [1]
В инет нашел вот это:

When TXMLDocument is created without an Owner , it behaves like an interfaced object. That is, when all references to its interface are released, the TXMLDocument instance is automatically freed. When TXMLDocument is created with an Owner , however, it behaves like any other component, and is freed by its Owner .

Значит если поставить xmlResponse:=nil; ничего страшного не будет?


 
Reindeer Moss Eater ©   (2007-09-13 13:31) [4]

Ничего страшного не будет, даже если ничего не поставить


 
alles ©   (2007-09-13 13:38) [5]

ok. И еще один вопрос:
Есть переменная типа olevariant
Var IdPay: olevariant;
даем ей обычьный стринг:
IdPay:=Request.Item["bankid"]; // (Request type of IRequest - interface)

Надо в конце операций освобождать память под IdPay?


 
Reindeer Moss Eater ©   (2007-09-13 13:46) [6]

не надо.


 
alles ©   (2007-09-13 13:56) [7]

спасибо всем за ответы


 
Kolan ©   (2007-09-14 08:32) [8]

А работать лучьше с IXMLDocument



Страницы: 1 вся ветка

Текущий архив: 2007.10.14;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.031 c
15-1190005822
Slider007
2007-09-17 09:10
2007.10.14
С днем рождения ! 15 сентября 2007 суббота


3-1181305142
Alvin
2007-06-08 16:19
2007.10.14
Приложение на Delphi под wine


15-1189884398
syte_ser78
2007-09-15 23:26
2007.10.14
bde + vista


15-1189682596
iam
2007-09-13 15:23
2007.10.14
.NET Profiler: ANTF Profiled


2-1190177947
zzzz
2007-09-19 08:59
2007.10.14
Проблема с компонентами ehLib