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

Вниз

Вопросы по основам наследования   Найти похожие ветки 

 
Sirakuz ©   (2004-05-11 16:17) [0]

Я создаю объект от TObject.
1. в нём нет динамических массивов - память не выделяется(только статические переменные типа i:Integer)
 a) можно ли не описывать Constructor и Destructor нового объекта(использовать TObject"овские)?
2. В нём есть есть динамический массив.
 а) Почему при описании деструктора компилятор пишет "Method "Destroy" hides virtual method of base object TObject"? Что измениться при вызове деструктора если я укажу "override"?
 б) Нужно ли в начале конструктора и в конце деструктора писать
"inherited"?


 
Тимохов ©   (2004-05-11 16:21) [1]


> a) можно ли не описывать Constructor и Destructor нового
> объекта(использовать TObject"овские)?

можно, можно даже если есть дин. массивы.


> а) Почему при описании деструктора компилятор пишет "Method
> "Destroy" hides virtual method of base object TObject"?
> Что измениться при вызове деструктора если я укажу "override"?

все измениться.
ставте override и не сомневайтесь. Если не поставите destroy не вызовется никогда.

>  б) Нужно ли в начале конструктора и в конце деструктора
> писать
> "inherited"?

можно и не писать, если уверены, что из предочных методов вам ничего не нужно. Лучше пишите.


 
WebErr ©   (2004-05-11 16:24) [2]


> ставте override и не сомневайтесь. Если не поставите destroy
> не вызовется никогда

Вызовется, но не тот. :)


 
Тимохов ©   (2004-05-11 16:26) [3]


> WebErr ©   (11.05.04 16:24) [2]

согласен

более корректно:

"... ваш destroy не вызовется никогда ..."


 
Sirakuz ©   (2004-05-11 16:31) [4]

А какой destroy вызовется? TObject"a ? А если я не написал inherited в конструкторе, тогла что?


 
Тимохов ©   (2004-05-11 16:39) [5]


> А какой destroy вызовется? TObject"a ? А если я не написал
> inherited в конструкторе, тогла что?

вопроса здесь два.

Вопрос: А какой destroy вызовется
Ответ: в случае наследования прямо от tobject, то да - destroy от tobject.

Вопрос: А если я не написал inherited в конструкторе, тогла что
Ответ: в случае наследования прямо от tobject, ничего не будет - crate у tobject ничего не делает. все будет ок



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

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

Наверх




Память: 0.48 MB
Время: 0.026 c
1-1083306393
stone777
2004-04-30 10:26
2004.05.23
Установка Delphi


9-1072205907
SoS
2003-12-23 21:58
2004.05.23
в примерах делфиХ нашел пример, но там безконечная карта!! как...


14-1083635414
тихий вовочка
2004-05-04 05:50
2004.05.23
Куда исчезают все бандиты


1-1083847910
BALU1111
2004-05-06 16:51
2004.05.23
Дата


4-1081449731
WELLiON
2004-04-08 22:42
2004.05.23
отлов сообщений от контекстного меню