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
