2) Templates: you don't need to resort to a horrible macro mess to implement a type-safe container.
3) Polymorphism: you don't need to manually manage vtables.
Also enum classes are pretty useful. Unlike old enums, the labels do not pollute an outer scope.
2) Templates: you don't need to resort to a horrible macro mess to implement a type-safe container.
3) Polymorphism: you don't need to manually manage vtables.