Главная страница
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.029 c
3-1082907096
Ilg
2004-04-25 19:31
2004.05.23
Выбор случайной записи


4-1081086796
Константин
2004-04-04 17:53
2004.05.23
Иконка на панели задач


1-1083764211
Aleksandr
2004-05-05 17:36
2004.05.23
Сколько раз можно вызывать SetEvent?


4-1080803647
melnikov ivan
2004-04-01 11:14
2004.05.23
Как пользоваться функцией VirtualQueryEx()?


1-1084345406
Stas
2004-05-12 11:03
2004.05.23
как в MDIChild убрать заголовок