I just discovered the entire playlist of C++ lectures from the same teacher at ITMO University!
30 videos
~45 hours of content
My new fav playlist on YouTube now.
Topics:
1. Passing by Value, RVO, NRVO
2. Rvalue-references, Move Semantics, Xvalue, Copy Elision, Lifetime Extension
3. Intrusive Containers
4. shared_ptr
5. Perfect Forwarding, Universal References, Variadic Templates
6. Returning Values with Perfect Forwarding, decltype, auto, nullptr
7. Static and Dynamic Polymorphism, Anonymous Functions
8. Anonymous Functions (Continuation), std::function, Type Erasure
9. Signals, Reentrancy
10. Error Handling
11. optional, noexcept, Trivial Operations
12. SFINAE-friendly Functions, Conditionally explicit Constructors
13. constexpr
14. variant
15. Concepts
16. Encodings
17. Multithreading, std::thread, std::mutex
18. Multithreading, std::condition_variable
19. Multithreading, std::atomic
20. Multithreading, std::atomic (Continuation)
21. Multithreading, Relaxed Atomics
22. Multithreading, Cancellation, Asynchronous Operations
23. Introduction to Qt
24. Drawing the Mandelbrot Fractal in Qt
25. C++20 Modules
This is how I was taught C++ at ITMO University:
1. Implement my own 'printf' in pure Assembly
2. Implement Big Integer class with CoW and SOO
3. Implement the QuickHull algorithm
4. Learn Type Erasure and implement my own std::function
5. Implement Persistent Binary Search Tree (PBST) using std::shared_ptr
6. Implement a custom Hoard memory allocator, optimised for multithreaded programming
I learned C++ before C.
I never looked at C++ as "C with Classes".