2018
- Item-21 Don't return a reference when we have to return an object
- Item-20 Perfer pass-by-reference-to-const to pass-by-value
- Item-19 Treat class design as type design
- Item-18 Make interfaces easy to use correctly and hard to use incorrectly
- Item-17 Store newed objects in smart pointers in standalone statements
- Item-16 Use the same form in corresponding uses of new and delete
- Item-15 Provide access to raw resource in resource-managing classes
- Item-14 Copy behavior in resource-managing classes
- Item-13 Use objects to manage resources
- Item-12 Copy all parts of an object
- Item-11 Handle self assignment in operator=
- Item-10 Have assignment operators return a reference to *this
- Item-8 Prevent exception from leaving destructor
- Item-7 Declare destructor virtual in polymorphic base classes
- Item-6 Disallow unwanted compiler-generated functions
- Item-5 What functions C++ silently generates
- Item-4 Initialize objects before they're used
- Item-3 Use const whenever possible
- Item-0 Federation of languages
- Item-2 Compare <iostream> to <stdio.h>