On 03.12.2013 19:10, Dejan Lekic wrote:
No offense, so far I haven's seen a GOOD reason for making final to be the default.
The best reason I've got is that making something final is a breaking change, while making something virtual is not. That means:
(with virtual by default) If you write a library and forget to make a function final, you're stuck with it.
(with final by default) If you write a library and forget to make a function virtual, you just fix it.
In my career I *rarely* had situation that I knew ahead my class method
> is *definitely* final. Of course not. But see above.
You say "dangerous". - I am quite sure people are aware of those "dangers".
I am absolutely certain some people are not aware of the dangers. -- Simen
