Since some people don't enjoy videos, the slides are here:
The selected guidelines are:
- C.45: Don't define a default constructor that only initializes data members; use in-class member initializers instead.
- C.48: Prefer in-class initializers to member initializers in constructors for constant initializers
- F.51: Where there is a choice, prefer default arguments over overloading.
- C.47: Define and initialize member variables in the order of member declaration.
- I.23: Keep the number of function arguments low
- ES.50: Don't cast away const.
- I.11: Never transfer ownership by a raw pointer (T*)
- F.21: To return multiple "out" values, prefer returning a tuple or struct.
- Enum.3: Prefer class enums over "plain" enums
- I.12: Declare a pointer that must not be null as [gsl::] not_null.