我有如下代码
TLivingThing=class
end;
THuman=class(TLivingThing)
public
Language:String
end;
TAnimal=class(TLivingThing)
public
LegsCount:integer;
end;
procedure GetLivingThing()
var
livingThing:TLivingThing;
begin
livingThing:=THuman.Create();
if livingThing=TypeInfo(THuman) then ShowMessage('human');
livingThing:=TAnimal.Create();
if livingThing=TypeInfo(TAnimal) then ShowMessage('animal');
end;
如何检查上面代码的对象类型?我尝试了 typeInfo 但消息从未执行
如何访问子类公共字段?像这样?
TAnimal(livingThing).LegsCount=3;
它的类型安全时尚?或者有什么更好的方法来完成这个案例?
谢谢你的建议