Вниз
Скачать: CL | DM;

Интерфейс + with   Найти похожие ветки 

← →
ЗВаська   (2008-01-06 22:05) [0]

У меня есть функция которая в результате возвращает некий интерфейс
function CreateXmlDocument(
const aRootElementName: String;
const aVersion: String;
const anEncoding: String;
const aNames: IXmlNameTable): IXmlDocument;


Я вызываю эту функцию через with:
with CreateXmlDocument do
begin
 Load("hhh.xml");
 DocumentElement.SelectSingleNode("ff")
 ...
end;


Как освобождается память выделенная под этот интерфейс: автоматом ли? Или все же нужно делать промежуточную переменную, которую после равнять в nil?


← →
Sergey Masloff   (2008-01-06 22:41) [1]

Как только переменная выйдет из области видимости - компилятор все сделает за тебя.
Сразу после end все что нужно будет сделано


← →
Sergey Masloff   (2008-01-06 22:43) [2]

Да меленькое дополнение. Конечно не будет освобождена память а будет уменьшен счетчик ссылок. Память будет освобождена если объект реализующий интерфейс обеспечивает нормальную работу со счетчиком ссылок и значение счетчика почсле уменьшения стало = 0



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

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.013 c
15-1198321867
Kostafey
2007-12-22 14:11
2008.02.03
С днем рождения ! 22 декабря


15-1198436072
No_Dead
2007-12-23 21:54
2008.02.03
Не могу определиться, что выбрать:(


2-1199779394
Zheksik
2008-01-08 11:03
2008.02.03
Варианты решения задачи сравнения вещественных чисел.


2-1199785667
fics
2008-01-08 12:47
2008.02.03
Помогите с запросом к БД


3-1190716771
MZ
2007-09-25 14:39
2008.02.03
перенести файл БД под Linux




   Наверх