Froglegs:

>   One thing I'm not sure about, D classes are virtual by default, 
> but if you mark all functions as final does the class still 
> contain a VFP or any other cruft?

Even D final classes, that do not have virtual methods, have a pointer to 
virtual table. It's used to know what class the instance is (for reflection too 
and for the destructor).


>   Also why are class functions virtual by default? My experience 
> in C++ is that I rarely use virtual, so I don't really understand 
> why that is the default.

Maybe because D OO design copies Java OO design a lot. But even in C# methods 
are not virtual on default.

Bye,
bearophile

Reply via email to