Lecture 1 - Course Outline
Lecture 2 - Quick Recap 01: Recap of C/1
Lecture 3 - Quick Recap 02: Recap of C/2
Lecture 4 - Course Overview
Lecture 5 - IO and Loop
Lecture 6 - Arrays and Strings
Lecture 7 - Sorting and Searching
Lecture 8 - Stack and Common Data Structures/Containers
Lecture 9 - Tutorial 1: How to build a C/C++ program?: Part 1: C Preprocessor (CPP)
Lecture 10 - Constants and Inline Functions
Lecture 11 - Reference and Pointer
Lecture 12 - Default Parameters and Function Overloading
Lecture 13 - Operator Overloading
Lecture 14 - Dynamic Memory Management
Lecture 15 - Tutorial 2: How to build a C/C++ program?: Part 2: Build Pipeline
Lecture 16 - Static Members
Lecture 17 - Classes and Objects
Lecture 18 - Access Specifiers
Lecture 19 - Constructors, Destructors and Object Lifetime
Lecture 20 - Copy Constructor and Copy Assignment Operator
Lecture 21 - Const-ness
Lecture 22 - Tutorial 3: How to build a C/C++ program?: Part 3: make Utility
Lecture 23 - Inheritance: Part 3 (Constructor and Destructor - Object Lifetime)
Lecture 24 - Friend Function and Friend Class
Lecture 25 - Overloading Operator for User-Defined Types: Part 1
Lecture 26 - Overloading Operator for User-Defined Types: Part 2
Lecture 27 - Namespace
Lecture 28 - Tutorial 4: How to build a C/C++ program?: Part 4: Static and Dynamic Library
Lecture 29 - Inheritance: Part 2 (Data Member and Member Function - Override and Overload)
Lecture 30 - Inheritance: Part 3 (Constructor and Destructor - Object Lifetime)
Lecture 31 - Inheritance: Part 4: Phone Hierarchy
Lecture 32 - Inheritance: Part 5: private and protected Inheritance
Lecture 33 - Tutorial 5: Mixing C and C++ Code: Part 1: Issues and Resolutions
Lecture 34 - Polymorphism: Part 1: Type Casting
Lecture 35 - Polymorphism: Part 2: Static and Dynamic Binding
Lecture 36 - Polymorphism: Part 3: Abstract Base Class
Lecture 37 - Polymorphism: Part 4: Staff Salary Processing using C
Lecture 38 - Polymorphism: Part 5: Staff Salary Processing using C++
Lecture 39 - Tutorial 6: Mixing C and C++ Code: Part 2: Project Example
Lecture 40 - Virtual Function Table
Lecture 41 - Type Casting and Cast Operators: Part 1
Lecture 42 - Type Casting and Cast Operators: Part 2
Lecture 43 - Type Casting and Cast Operators: Part 3
Lecture 44 - Multiple Inheritance
Lecture 45 - Tutorial 7: How to design a UDT like built-in types?: Part 1: Fraction UDT
Lecture 46 - Exceptions (Error handling in C): Part 1
Lecture 47 - Exceptions (Error handling in C++): Part 2
Lecture 48 - Template (Function Template): Part 1
Lecture 49 - Template (Class Template): Part 2
Lecture 50 - Functors: Function Objects
Lecture 51 - Tutorial 8: How to design a UDT like built-in types?: Part 2: Int and Poly UDT
Lecture 52 - Input-Output: File Handling in C
Lecture 53 - Input-Output: Streams in C++
Lecture 54 - C++ Standard Library: Part 1 (Generic Programming)
Lecture 55 - C++ Standard Library: Part 2 (STL)
Lecture 56 - C++ Standard Library: Part 3 (STL)
Lecture 57 - Tutorial 9: How to design a UDT like built-in types?: Part 3: Updates and Mixes of UDTs
Lecture 58 - C++11 and beyond: General Features: Part 1
Lecture 59 - C++11 and beyond: General Features: Part 2
Lecture 60 - C++11 and beyond: General Features: Part 3
Lecture 61 - C++11 and beyond: General Features: Part 4: Rvalue and Move/1
Lecture 62 - C++11 and beyond: General Features: Part 5: Rvalue and Move/2
Lecture 63 - Tutorial 10: How to optimize C++11 programs using Rvalue and Move Semantics?
Lecture 64 - C++11 and beyond: General Features: Part 6: Rvalue and Perfect Forwarding
Lecture 65 - C++11 and beyond: General Features: Part 7: Lambda in C++/1
Lecture 66 - C++11 and beyond: General Features: Part 8: Lambda in C++/2
Lecture 67 - C++11 and beyond: Class Features
Lecture 68 - C++11 and beyond: Non-class Types and Template Features
Lecture 69 - Tutorial 11: Compatibility of C and C++: Part 1: Significant Features
Lecture 70 - C++11 and beyond: Resource Management by Smart Pointers: Part 1
Lecture 71 - C++11 and beyond: Resource Management by Smart Pointers: Part 2
Lecture 72 - C++11 and beyond: Concurrency: Part 1
Lecture 73 - C++11 and beyond: Concurrency: Part 2
Lecture 74 - Closing Comments
Lecture 75 - Tutorial 12: Compatibility of C and C++: Part 2: Summary