fix struct API with an interface

Flamaros flamaros.xavier at gmail.com
Thu Mar 6 06:28:12 PST 2014


On Thursday, 6 March 2014 at 13:35:13 UTC, John Colvin wrote:
> On Thursday, 6 March 2014 at 13:26:27 UTC, Flamaros wrote:
>> I add directx 9 support on DQuick and as some of renderer 
>> objects are declared as struct, it seems it can make them 
>> derives from an interface.
>>
>> Need I use final class instead to avoid virtual methods?
>>
>> PS: I am not planning to support run-time switch between 
>> OpenGL and directX renderers.
>
> I'm not sure I understand the question, but here's some facts 
> that might help:
>
> struct methods are never virtual.
> final class methods are never virtual.
> structs do not support inheritance.
>
> Is the indirection caused by using an interface+class going to 
> be a performance problem?

Ok, it's like I though final class and struct are equivalent when 
calling a method (except the pointer deference, but it's minor I 
think).

I don't think there is a real performance problem for us, it's 
more about to learn how to have a clean design.


More information about the Digitalmars-d-learn mailing list