Identity of interfaces (or not)

Christopher Wright dhasenan at gmail.com
Tue Dec 2 15:31:09 PST 2008


BCS wrote:
> Reply to Tomas,
> 
>> The problem is that B has two vtables that implement the interface I.
>> However, in A.addChild, i.parent get's the first one (introduced by
>> A), and in main, it gets the second one (J , which derived from I).
>> The identity check then fails because the pointers aren't the same,
>> even though it's the same object in question.
> 
> why not make
>  Ia == Ib
> into
>  cast(Object)Ia == cast(Object)Ib
> ?

That makes sense, and I fully support it. I tend to use interfaces 
rather often, and anything to improve support for them is good.



More information about the Digitalmars-d mailing list