Главная страница
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-1084204215
dnsokol
2004-05-10 19:50
2004.05.23
Менюшка элементов aka Outlook


8-1078660834
S_FreemAn*[wiZard]
2004-03-07 15:00
2004.05.23
Компонент Delphi


1-1084285339
ПрогерШ
2004-05-11 18:22
2004.05.23
Как считать текущий адрес из ИЕ?


14-1083742581
X9
2004-05-05 11:36
2004.05.23
Клиент форума.


9-1074002243
ZAROLF
2004-01-13 16:57
2004.05.23
GamePlay