Главная страница
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.54 MB
Время: 0.074 c
15-1164840692
Фотто
2006-11-30 01:51
2006.12.24
Существуют ли он-лайн преобразователи паскаля в html ?


2-1165468650
Antello
2006-12-07 08:17
2006.12.24
событие On Select компоненты TComboBox


4-1155908277
apic
2006-08-18 17:37
2006.12.24
Серийные номера


1-1162984667
Димыч
2006-11-08 14:17
2006.12.24
Прилипание дочерних окон к главному окну


15-1164980156
Германн
2006-12-01 16:35
2006.12.24
Вроде сегодня 1 декабря, а не 1 апреля, но...