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

Вниз

конструктор / деструктор   Найти похожие ветки 

 
начинающий_   (2011-11-01 15:23) [0]

Пишу класс TMyClass наследник TObject.

TMyClass = class(TObject)
public
 constructor Create(Database: TDBISAMDatabase);
 destructor Destroy;
end;

нужно ли оверрайдить конструктор и деструктор, наследуясь от TObject?


 
Юрий Зотов ©   (2011-11-01 15:28) [1]

Деструктор - обязательно, потому что он виртуальный. Если не заоверрайдите, получите замечание от компилятора.

Конструктор - не надо (да и не получится, даже если попробуете)


 
Омлет ©   (2011-11-01 15:29) [2]

Конструктору надо reintroduce.
Деструктору - override.


 
Омлет ©   (2011-11-01 15:31) [3]

> Конструктору надо reintroduce.

А, впрочем, можно и не писать.


 
DiamondShark ©   (2011-11-01 15:32) [4]

TObject не имеет виртуальных конструкторов, соответсвенно, оверрайдить конструктор не только не нужно, но и не можно.

TObject имеет виртуальный деструктор Destroy, соответственно, оверрайдить его можно, а можно не оверрайдить. Если его не оверрайдить, то весь сторонний код, который полагается на виртуальный вызов унаследованного от TObject деструктора Destroy новый деструктор вызвать не сможет.
А вот нужно тебе это или не нужно -- целиком от тебя зависит.


 
Игорь Шевченко ©   (2011-11-01 16:50) [5]


> Конструктору надо reintroduce.


The reintroduce directive suppresses compiler warnings about hiding previously declared virtual methods



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

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

Наверх




Память: 0.47 MB
Время: 0.007 c
10-1177068721
Сергей М.
2007-04-20 15:32
2012.02.12
Visual FoxPro Run-Time Library (vfpXX.dll)


2-1319873798
de_guta
2011-10-29 11:36
2012.02.12
Проблема с потоком


6-1239173060
MindWork
2009-04-08 10:44
2012.02.12
IdHTTPProxyServer и tmStreaming


15-1319229836
Германн
2011-10-22 00:43
2012.02.12
А в какой версии Дельфи


15-1319747403
Юрий
2011-10-28 00:30
2012.02.12
С днем рождения ! 28 октября 2011 пятница