[fpc-pascal] Inherit interface from 2 interfaces
michael.vancanneyt at wisa.be
michael.vancanneyt at wisa.be
Tue Apr 12 11:42:11 CEST 2011
On Tue, 12 Apr 2011, Andreas Dorn wrote:
> On Fri, 8 Apr 2011,michael.vancanneyt worte:
>> The whole idea of interfaces is to avoid multiple inheritance.
>>
> Hm. I don't believe that.
>
> One of the major points of interfaces is indeed to avoid the problems
> of multiple class inheritance (diamond problems - i.e. problems caused by
> conflicting implementations of a method in different ancestor classes).
>
> But Interfaces themselves don't have an implementation, so those
> diamond problems simply don't exist for them.
Of course they do. If they inherit from 2 interfaces that have the same
method with a different signature, you have a problem.
InterfaceA = Interface
Function IsValid : Integer;
end;
InterfaceB = Interface
Function IsValid : String;
end;
How to define :
InterfaceC = Interface(InterfaceA,InterfaceB)
Michael.
More information about the fpc-pascal
mailing list