Re: [DUG] Interfaces

2008-08-07 Thread Alister Christie
No, There is some other stuff that is confusing me also to do with interface inheritance - I think I'm going to have to do some reading. Alister Christie Computers for People Ph: 04 471 1849 Fax: 04 471 1266 http://www.salespartner.co.nz PO Box 13085 Johnsonville Wellington Todd Martin

Re: [DUG] Interfaces

2008-08-07 Thread Todd Martin
That is exactly right, but why would you want to, when ISpeakable supports makeNoise() anyway? You can still pass your TPerson object into a method(AObject : INoiseable) without problems. Todd. However if I change my TPerson to the following TPerson = class(TInterfacedObject, ISpeakable,

Re: [DUG] Interfaces

2008-08-07 Thread Alister Christie
If I have TPerson = class(TInterfacedObject, ISpeakable) Procedure MakeANoise(n : INoiseable); begin n.MakeNoise; end; and var Person : TPerson; begin Person := TPerson.Create; MakeANoise(Person); //Incompatible types: 'INoiseable' and 'TPerson' end; I can't pass a TPerson to an