Functions
- overloading by type
- pass by reference, reference to const
Classes
- RAII
- destructor (don't throw in a destructor)
- inheritance
- public/private
- Copy constructor, assignment constructor
- move constructor
Templates
- are we gonna write this compare for each type we need?
Std
- forEach, algorithm
- lambdas
Move semantics and rvalue references
Threading and Locking
- contention over
cout; use a mutex. - unique_pointer, shared_pointer
- Insertion-sort on integers (we provide pseudo-code and function signature)
- swap routine for strings (doesn't work unless we use references)
- swap routine for integers
- templated swap routine
- make a Rational class ("class design is type design")
- operator*, operator+, operator-
- private data for numerator and denominator
- private methods for reduce (smallest terms)
- Linked-list of integers
- destructor
- pointers and heap data
- Templated Linked-list
- Contention over cout. fix it using a mutex
- make a parent class that reads from a queue, calls
executewhenever it gets a value and enqueues a future for whatever execute returns. Make a class that inherits from this parent and counts letters in the sentences read from a queue