C++ basics improvement, object-oriented paradigm and advanced programming techniques, along with classic interview questions and practical problem-solving examples.
Relevant code is on Github. Please give me a star if you benifit from it!
😀 These notes are for:
- People who have already learned C and want to learn C++
- People who already know C++ and want to learn in depth
- People who are preparing for recruitment and want to crack the technical interviews (like me)
- People who want to use C++ in practical projects and want to know about common programming techniques
🙁 These notes are not for:
- People who have no programming experience with C-style programming languages
- People who want to delve into the details of C++ standards
Have fun!
- Virtual Address Space of Process: Memory Partition and Layout
- Function Call: Stack Frame
- Program Compiling and Linking
- Default Parameters
- Inline Function
- Function Overloading
new
anddelete
const
and Pointers- References in Detail
- Class and Object
- Constructor and Destructor
- Shallow Copy and Deep Copy
- Initializer List
- Various Member Functions
- Pointer to Class Members
- Operator Overloading
- Introduction to Iterators
- Issues of Iterator Invalidation
- More about
new
anddelete
- Overloading of
new
anddelete
: Object Pool
- Look inside Inheritance
- More about Inheritance
- Virtual Functions, Static Binding and Dynamic Binding
- More about Virtual Functions
- Understanding Polymorphism
- Abstract Classes
- Frequently Asked Interview Questions: Polymorphism
- Sequence Containers
- Container Adapters
- Associative Containers
- More about Iterators
- Function Objects
- Generic Algorithms, Binders and Lambda Expressions
- Behind the Object
- Optimizing Objects in Functions
- Member Functions with Rvalue References
- Move Semantics and Perfect Forwarding
- Smart Pointers
- Smart Pointers without Reference Counting
- Smart Pointers with Reference Counting
- Custom Deleters
- More about Binders
- Introduction to std::function
- Template Specialization and Argument Deduction
- More about std::function
- std::bind(): A Simple Thread Pool
- More about Lambda Expressions