Checkout the repository for each module by clicking on the respective heading.
CPP-00 - Basics of C++
Concepts:
- namespaces
- Class and instance
this->
pointer- member functions
- stdio streams
- encapsulation
- initialization lists
static
andconst
keywords
CPP-01 - Memory, references, and file streams
Concepts:
- dynamic memory allocation:
new
anddelete
- pointers to members
- references
- file manipulation
- switch statements
CPP-02 - Ad-hoc polymorphism, overloading, and canonical form
Concepts:
- Function overloading (Ad-hoc polymorphism)
- Operator overloading
- Orthodox Canonical form
- Fixed-point numbers
CPP-03 - Inheritance
Concepts:
- Inheritance between classes
- Multiple inheritance
- Diamond problem
CPP-04 - Subtype polymorphism, abstract classes, and interfaces
Concepts:
- Subtyping
- Abstract classes
- Pure virtual functions
- Virtual Destructors
- Deep copies