Този код не е разрешен:
class constructor TOmniMultiPipelineStage.Create;
var
RTTIType: TRttiType;
begin
RTTIType:= TRttiContext.GetType(self);
end;
[Грешка dcc32] OtlParallel.pas(5040): E2003 Недеклариран идентификатор: 'self'
Вариантът също не е разрешен:
class constructor TOmniMultiPipelineStage.Create;
var
RTTIType: TRttiType;
begin
//Not really what I want because I want the actual type of the class
//Not a fixed ancestor type
RTTIType:= TRttiContext.GetType(TOmniMultiPipelineStage);
end;
[dcc32 грешка] OtlParallel.pas(5039): E2076 Тази форма на извикване на метод е разрешена само за методи на клас или конструктор
Как да получа RTTI информация за клас в неговия конструктор на клас?
Бележка за себе си: преминете през всички наследници на клас: Delphi: По време на изпълнение намирате класове, които произлизат от даден базов клас?