[fpc-pascal] Casting descendant interface variables to base
    Andrew Hall 
    andrew.hall at shaw.ca
       
    Mon Jan 31 07:50:18 CET 2011
    
    
  
On 30 Jan 11, at 22:28 , cobines wrote:
> it is now a pointer to IBaseInterface, because of implicit QueryInterface?
The reference changes because you have explicitly cast (the implementing object) to another interface.
> So, I think I can compare interface variables but first I have to
> bring them to the same interface using "as", for example to IUnknown.
Yes.  This function will confirm the two provided interfaces are implemented by the same object...
function EqIntf(a, b: IUnknown): Boolean;
begin
  Result := (a as IUnknown) = (b as IUnknown);
end;
Regards Andrew.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freepascal.org/pipermail/fpc-pascal/attachments/20110130/98eefc2d/attachment.html>
    
    
More information about the fpc-pascal
mailing list