C:\tasm>tlink.exe l3p.obj+L3.OBJ /t
Turbo Link Version 2.0 Copyright (c) 1987, 1988 Borland International
Cannot generate COM file : data below initial CS:IP defined
Если чётко указать, что поле имеет тип родительского класса, то дочерние классы уже не проходят.
type TParent=class
end;
type TChild=class(TParent)
end;
type TController=class
private
fClass:TParent;
public
procedure ProcessAnyChild(aClass:TParent);
end;
procedure Test();
var child:TChild;
controller:TController;
begin
child := TChild.Create();
controller := TController.Create();
controller.ProcessAnyChild(child)
end;
procedure TController.ProcessAnyChild(aClass: TParent);
begin
fClass:=aClass
end;
<html >
<frameset cols="400,400,*">
<frame src="http://192.168.1.1/a.html" name="leftFrame" scrolling="no" noresize />
<frame src="http://192.168.1.2/b.html" name="middleFrame" scrolling="no" noresize />
<frame src="http://192.168.1.3/c.html" name="rightFrame" scrolling="no" noresize />
</frameset>
</html>
iCnt:=300; fLen:=200;
for iTime:=0 to iCnt-1 do
begin
fRo:=iTime/iCnt*2*PI;
fLen1:=fLen*(iTime/iCnt);
iX1:=iXCenter+round(fLen1*cos(fRo));
iY1:=iYCenter+round(fLen1*sin(fRo));
fLen2:=fLen-fLen1;
iX2:=iXCenter-round(fLen2*cos(fRo));
iY2:=iYCenter-round(fLen2*sin(fRo));
// отрисовка
end;