Я создаю общий класс списка, который имеет член типа Array (Array of).
Проблема заключается в уничтожении класса, поскольку предполагается, что этот класс используется для типов от байтов до типов, наследующих TObject.
В частности:
destructor Destroy;
var elem:T;
begin
/*if(T is Tobject) then //Check if T inherits TObject {Compiler error!}
for elem in FData do TObject(elem).Free;*/ // do not know how to do it
SetLength(FItems,0); //FItems : Array of T
inherited Destroy;
end;
Как проверить, является ли T TObject, чтобы я мог освободить каждого члена, например, если идентификатор типа является классом?