如何释放实现了某接口的类实例!按如下情况释放为何会出错
type
IDescendant = interface(IAncestor)
procedure P2;
end;
TSomething = class(TInterfacedObject, IDescendant)
procedure P1;
end;
var
D: IDescendant;
something: tsomething;
implementation
{$R *.dfm}
procedure TSomething.P1;
begin
ShowMessage('实现接口IDescendant的类TSomething的P1');
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
something := TSomething.Create;
D := something;
D.P1;
something.free //执行该语句出错误?为何?
end;