C++ Programming Course - Beginner to Advanced

Learn modern C 20 programming in this comprehensive course. 💻 Source code: ✏️ Course developed by Daniel Gakwaya. Check out his YouTube channel: 🐦 Twitter: 🔗 Want more from Daniel? 🔗 Join Daniel’s discord server for support: ⭐️ Course Contents ⭐ (0:00:00) Introduction (0:04:32) Chapter 1: Setting up the tools Tools Installing C Compilers on Windows Installing VS Code on Windows Configuring Visual Studio Code for C on Windows Installing C Compilers on Linux Installing Visual Studio Code on Linux Configuring Visual Studio Code for C on Linux Installing C Compilers on MacOs Installing Visual Studio Code on MacOs Configuring Visual Studio Code for C on MacOs Online Compilers (1:43:01) Chapter 2: Diving in Your First C Program Comments Errors and Warnings Statements and Functions Data input and output C Program Execution Model C core language Vs Standard library Vs STL (3:00:47) Chapter 3: Variables and data types Variables and data types Introduction Number Systems Integer types : Decimals and Integers Integer Modifiers Fractional Numbers Booleans Characters And Text Auto Assignments Variables and data types summary (4:46:46) Chapter 4: Operations on Data Introduction on Data operations Basic Operations Precedence and Associativity Prefix/Postfix Increment & Decrement Compound Assignment Operators Relational Operators Logical Operators Output formatting Numeric Limits Math Functions Weird Integral Types Data Operations Summary (7:01:58) Chapter 5: Flow Control Flow Control Introduction If Statements Else If Switch Ternary Operators Flow Control Summary (7:53:49) Chapter 6: Loops Loops Introduction For Loop While Loop Do While Loop (8:47:08) Chapter 7: Arrays Introduction to Arrays Declaring and using arrays Size of an array Arrays of characters Array Bounds (9:53:23) Chapter 8: Pointers Introduction to Pointers Declaring and using pointers Pointer to char Program Memory Map Revisited Dynamic Memory Allocation Dangling Pointers When new Fails Null Pointer Safety Memory Leaks Dynamically allocated arrays (12:11:04) Chapter 9: References Introduction to References Declaring and using references Comparing pointers and references References and const (12:44:29) Chapter 10: Character Manipulation and Strings Introduction to Strings Character Manipulation C-string manipulation C-String concatenation and copy Introducing std::string Declaring and using std::string (14:12:47) Chapter 11: Functions The One Definition Rule First Hand on C Functions Function Declaration and Function Definitions Multiple Files - Compilation Model Revisited Pass by value Pass by pointer Pass by reference (16:03:20) Chapter 12: Getting Things out of functions Introduction to getting things out of functions Input and output parameters Returning from functions by value (16:32:35) Chapter 13: Function Overloading Function Overloading Introduction Overloading with different parameters (16:49:00) Chapter 14: Lambda functions Intro to Lambda Functions Declaring and using lambda functions Capture lists Capture all in context Summary (17:40:08) Chapter 15: Function Templates Intro to function templates Trying out function templates Template type deduction and explicit arguments Template parameters by reference Template specialization (19:04:31) Chapter 16: C 20 Concepts Crash course Intro to C 20 Concepts Using C 20 Concepts Building your own C 20 Concepts Zooming in on the requires clause Combining C 20 Concepts C 20 Concepts and auto (20:15:40) Chapter 17: Classes Intro to classes Your First Class C Constructors Defaulted constructors Setters and Getters Class Across Multiple Files Arrow pointer call notation Destructors Order of Constructor Destructor Calls The this Pointer struct Size of objects (22:52:43) Chapter 18: Inheritance Introduction to Inheritance First try on Inheritance Protected members Base class access specifiers : Zooming in Closing in on Private Inheritance Resurrecting Members Back in Context Default Constructors with Inheritance Custom Constructors With Inheritance Copy Constructors with Inheritance Inheriting Base Constructors Inheritance and Destructors Reused Symbols in Inheritance (26:21:03) Chapter 19: Polymorphism Introduction to Polymorphism Static Binding with Inheritance Dynamic binding with virtual functions Size of polymorphic objects and slicing Polymorphic objects stored in collections (array) Override Overloading, overriding and function hiding Inheritance and Polymorphism at different levels Inheritance and polymorphism with static members Final Virtual functions with default arguments Virtual Destructors Dynamic casts Polymorphic Functions and Destructors Pure virtual functions and abstract classes Abstract Classes as Interfaces
Back to Top