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

Вниз

Интерфейсы. А надо ли их освобождать?   Найти похожие ветки 

 
saxon   (2006-12-06 13:28) [40]


> DevilDevil ©   (06.12.06 13:23) [38]
> Где можно про это почитать?

MSDN, Help, Books ...


 
app ©   (2006-12-06 13:29) [41]


> Integer, например, то её изначальное значение может быть
> любым.

Для Integer это ноль.
Это же базис Дельфи.


 
DrPass ©   (2006-12-06 13:44) [42]


> допустим я объявил Интерфейс в теле своего класса. Он по-
> идее не должен быть nil, он может содержать что угодно

Поля класса всегда инициализируются пустыми значениями при создании экземпляра класса, если иное явно не задано в конструкции. Ты путаешь с локальными переменными процедур и функций.
Что касается локальной переменной-указателем на интерфейс, то в отличие от того же integer, компилятор тоже для нее сгенерирует код очистки, так что она по умолчанию будет установлена в nil всегда


 
Игорь Шевченко ©   (2006-12-06 13:58) [43]

DevilDevil ©   (06.12.06 13:23) [38]


> Ты хочешь сказать, что Delphi сам присваивает интерфейсу
> в конструкторе значение nil. Где можно про это почитать?
>


В справке, разумеется.


 
oxffff ©   (2006-12-06 14:28) [44]


>
> DevilDevil ©   (06.12.06 13:23) [38]
>
> > Игорь Шевченко ©   (06.12.06 13:17) [36]
>
>
> Если объявить не интерфейс, а другую переменную, Integer,
>  например, то её изначальное значение может быть любым.
> Ты хочешь сказать, что Delphi сам присваивает интерфейсу
> в конструкторе значение nil. Где можно про это почитать?
>


См. Tobject

-class function InitInstance(Instance: Pointer): TObject;
-procedure CleanupInstance;


 
oxffff ©   (2006-12-06 14:43) [45]

Для локальных переменных interface и string

var  a:IUnknown;
     b:string;

код на asm будет

push 0
push 0

А не sub esp,8

Таким образом они всегда инициализированы.


 
DevilDevil ©   (2006-12-06 15:14) [46]

Всем Thanks!!!



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

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

Наверх




Память: 0.55 MB
Время: 0.033 c
2-1165410960
Rtr
2006-12-06 16:16
2006.12.24
вопрос по Word


2-1165409538
q10nik
2006-12-06 15:52
2006.12.24
Вычисления


2-1165218733
*Ray*
2006-12-04 10:52
2006.12.24
обновление данных на Клиенте


15-1165216840
Gorlum
2006-12-04 10:20
2006.12.24
Оказывается, колесо может катиться вбок...


15-1165070881
dzmitry[li]
2006-12-02 17:48
2006.12.24
Пульт ДУ для компьютера