To take this course, you should have watched the first two parts or have a thorough understanding of the concepts covered there. You should be able to write basic C++ programs and know all about functions, arrays, pointers, and strings.
Ultimate C++ Part 3: Advanced
This part covers advanced concepts:
- Classes
- Operator Overloading
- Inheritance
- Polymorphism
- Exceptions
- Templates
About the Author: Mosh Hamedani (Code with Mosh)
Mosh Hamedani is the founder of Code with Mosh, one of the highest-volume independent online instructors in software education. He has been publishing courses continuously since the early Udemy era and has taught over a million students across his Udemy catalog and his standalone Code with Mosh platform. His teaching style is patient, rigorously structured, and deliberately beginner-tolerant — the courses are widely cited as some of the most accessible introductions to their respective topics.
The Code with Mosh catalog covers an unusually wide span: web development with HTML / CSS / JavaScript / React / Angular / Node.js, Python and Django, C# and .NET, mobile development with React Native and Flutter, SQL and database fundamentals, and the algorithm / data-structure interview prep tracks. Few independent instructors maintain this much breadth at consistent quality.
The CourseFlix listing under this source carries over 35 Code with Mosh courses spanning that range. Material is paid; Code with Mosh runs on per-course pricing on the original platform. Courses are aimed primarily at developers picking up a new technology from a clean start through to working production proficiency.
Watch Online 62 lessons
- Space or K: play or pause
- J: rewind 10 seconds
- L: forward 10 seconds
- Left Arrow: rewind 5 seconds
- Right Arrow: forward 5 seconds
- Up Arrow: volume up
- Down Arrow: volume down
- M: mute or unmute
- F: toggle fullscreen
- T: toggle theater mode
- I: toggle mini player
- 0 to 9: seek to 0 to 90 percent of the video
- Shift plus N: next video
- Shift plus P: previous video
| # | Lesson Title | Duration |
|---|---|---|
| 1 | 1- Welcome | 00:50 |
| 2 | 1- Introduction | 00:59 |
| 3 | 2- An Introduction to Object-oriented Programming | 04:45 |
| 4 | 3- Defining a Class | 05:51 |
| 5 | 4- Creating Objects | 03:52 |
| 6 | 5- Access Modifiers | 02:47 |
| 7 | 6- Getters and Setters | 08:46 |
| 8 | 7- Constructors | 03:58 |
| 9 | 8- Member Initializer List | 02:19 |
| 10 | 9- The Default Constructor | 02:35 |
| 11 | 10- Using the Explicit Keyword | 04:07 |
| 12 | 11- Constructor Delegation | 04:03 |
| 13 | 12- The Copy Constructor | 05:10 |
| 14 | 13- The Destructor | 01:44 |
| 15 | 14- Static Members | 04:27 |
| 16 | 15- Constant Objects and Functions | 04:36 |
| 17 | 16- Pointer to Objects | 07:40 |
| 18 | 17- Array of Objects | 03:20 |
| 19 | 1- Introduction | 00:37 |
| 20 | 2- Overloading the Equality Operator | 09:21 |
| 21 | 3- Overloading the Comparison Operators | 02:22 |
| 22 | 4- Overloading the Spaceship Operator | 05:10 |
| 23 | 5- Overloading the Stream Insertion Operator | 06:34 |
| 24 | 6- Overloading the Stream Extraction Operator | 01:57 |
| 25 | 7- Friends of Classes | 01:31 |
| 26 | 8- Overloading the Arithmetic Operators | 02:40 |
| 27 | 9- Overloading Compound Assignment Operators | 02:08 |
| 28 | 10- Overloading the Assignment Operator | 05:13 |
| 29 | 11- Overloading Unary Operators | 05:16 |
| 30 | 12- Overloading the Subscript Operator | 06:06 |
| 31 | 13- Overloading the Indirection Operator | 02:36 |
| 32 | 14- Overloading Type Conversions | 01:54 |
| 33 | 15- Inline Functions | 03:25 |
| 34 | 1- Introduction | 00:33 |
| 35 | 2- Inheritance | 06:11 |
| 36 | 3- Protected Members | 01:54 |
| 37 | 4- Constructors and Inheritance | 06:05 |
| 38 | 5- Destructors and Inheritance | 02:40 |
| 39 | 6- Conversion between Base and Derived Classesp | 03:23 |
| 40 | 7- Overriding Methods | 04:59 |
| 41 | 8- Polymorphism | 03:03 |
| 42 | 9- Polymorphic Collections | 03:42 |
| 43 | 10- Virtual Destructors | 02:47 |
| 44 | 11- Abstract Classes | 03:00 |
| 45 | 12- Final Classes and Methods | 01:54 |
| 46 | 13- Deep Inheritance Hierarchies | 04:04 |
| 47 | 14- Multiple Inheritance | 06:49 |
| 48 | 1- Introduction | 00:39 |
| 49 | 2- What are Exceptions | 02:12 |
| 50 | 3- Throwing an Exception | 02:05 |
| 51 | 4- Catching an Exception | 05:17 |
| 52 | 5- Catching Multiple Exceptions | 03:52 |
| 53 | 6- Where to Catch Exceptions | 03:25 |
| 54 | 7- Rethrowing an Exception | 01:28 |
| 55 | 8- Creating Custom Exceptions | 04:05 |
| 56 | 1- Introduction | 00:30 |
| 57 | 2- Defining a Function Template | 03:58 |
| 58 | 3- Explicit Type Arguments | 01:52 |
| 59 | 4- Templates with Multiple Parameters | 01:52 |
| 60 | 5- Defining a Class Template | 04:19 |
| 61 | 6- A More Complex Class Template | 04:59 |
| 62 | 9- What's Next | 01:41 |
Books
Related courses
-
Updated 2y ago2D Game Physics Programming
By: Gustavo PezziThis course is a gentle introduction into the world of 2D game physics! We'll review all the beautiful math that provides the foundation for most physics engine35h 7m -
Updated 2y agoUltimate C++ Part 2: Intermediate
By: Mosh Hamedani (Code with Mosh)Enhance your C++ skills by mastering arrays, pointers, and other key concepts. Ideal for those with basic knowledge from part one. Course by Mosh Hamedani.3h 37m -
Updated 2y agoUltimate C++ Part 1: Fundamentals
By: Mosh Hamedani (Code with Mosh)Master C++ fundamentals with Mosh Hamedani's course. Ideal for video games, IoT devices, and more. Enhance your coding skills with real-world examples.3h 52m5/5