2018
- [MECpp]Item-4 Avoid Gratuitous Default Constructors
- [MECpp]Item-3 Never Treat Arrays Polymorphically
- [MECpp]Item-1 Distinguish Between Pointers and References
- Item-52 Write placement delete if you write placement new
- Item-51 Adhere to convention when writing new and delete
- Item-50 Understand when it makes sense to replace new and delete
- Item-49 Understand the behavior of the new handler
- Item-48 Be aware of template metaprogramming
- Item-47 Use traits classes for information about types
- Item-46 Define non-member function inside templates when type conversions are desired
- Item-45 Use member function templates to accept all compatible types
- Item-44 Factor parameter-independent code out of templates
- Item-43 Know how to access names in templatized base classes
- Item-42 Understand the two meanings of typename
- Item-41 Understand inplicit interfaces and compile time polymorphism
- Item-40 Use multiple inheritance judiciously
- Item-39 Use private inheritance judiciously
- Item-38 Model 'has-a' or 'is-implemented-in-terms-of' through composition
- Item-37 Never redefine a function's inherited default parameter value
- Item-36 Never redefine an inherited non-virtaul function