Explicit virtual function overrides for better code readability and error prevention
Delegating constructors for reducing code duplication in class definitions
Strongly-typed enums for safer and more expressive enum types
Uniform initialization for creating objects with less syntax and more consistency
Type inference with the decltype keyword