- Код: Выделить всё
TBaseClass=Class
Constructor Create(); virtual;
...
TBaseClass1=Class(TBaseClass)
Constructor Create(); override;
....
TBaseClasses = class of TBaseClass;
Procedure Do(cl:TBaseClasses);
var b:TBaseClass;
begin
b:=Pointer(cl.Create());
end;
При вызове процедуры:
Do(TBaseClasses1);
вызывается конструктор TBaseClasses а не TBaseClasses1.
Что я делаю не так? Или как надо сделать, чтобы в процедуре Do() вызывался Constructor переданного класса?