C++ Nâng Cao
1. Lập trình hướng đối tượng (OOP)
- OOP: Kế thừa, đa hình, đóng gói, trừu tượng
- Rule of Three / Five / Zero & Constructor Enhancements
- Inheritance & Multiple Inheritance: Diamond Problem
- Static Members & Friend Functions
- Virtual Destructor & Object Slicing
- Design Patterns (Singleton, Factory, Strategy, Observer)
2. Quản lý bộ nhớ nâng cao
- Smart pointer: unique_ptr, shared_ptr, weak_ptr
- RAII – Quản lý tài nguyên tự động
- Leak detector: Valgrind, AddressSanitizer
3. Template nâng cao
4. Lambda & Function Object
5. Multithreading & Process
- Cơ bản về Thread
- Đồng bộ hóa: Mutex và Condition Variable
- Future, Promise, Async
- Khi nào nên dùng thread?
- Lưu ý về hiệu năng và tài nguyên
- Những vấn đề thường gặp với thread
- Làm việc với Process
- So sánh Thread và Process
6. STL nâng cao
- unordered_map / unordered_set
- set / multiset / map / multimap
- priority_queue / heap
- stack / queue / deque
- vector vs list
- Thuật toán STL
- C++20 Ranges
- Custom Comparator
- Iterator nâng cao
7. Modern C++ Features
8. Exception Handling
9. Debug & Testing
Trang này là phần mở rộng của C++ Cơ Bản.