
This course includes our updated coding exercises so you can practice your skills as you learn.
See a demo
in this lecture, you will learn an introduction to the course
Explore the course curriculum for this advanced c++ program, covering setup in Visual Studio and core oops concepts, inheritance, polymorphism, exceptions, and templates.
Get started with Windows, Mac, and Linux to choose and work with your preferred operating system. Beginners learn essential steps to begin using that OS for this advanced C++ course.
Master advanced C++ concepts, including OOPs and templates, starting from scratch with basic computer skills. Access source code in video lectures, complete real-world exercises, and set up your development environment.
learn how to download and install Visual Studio 2022 community edition on Windows, with steps to select desktop development with C++, review minimum system requirements, and finalize with a reboot.
Learn to create a first C++ console project in Visual Studio, choose the console template, set location, understand solution and project structure, and initialize a Git repository for cloning.
Learn to compile and run a simple C++ program in Visual Studio, using run options like start with debugging and start without debugging, then view the console output.
Generative artificial intelligence is artificial intelligence capable of generating text, images, videos, or other data using generative models, often in response to prompts. best ai tools are chatgpt, tabnine for developers, and more
You will learn how to learn online courses in a more productive way.
You will know the top AI tools every professional needs to boost productivity and achieve smarter results
Explore the fundamentals of C++ object oriented programming theory, including oops concepts, step by step initiation of classes, data structures, and access modifiers in class design.
Learn object oriented programming (oops) and why oops principles beat procedural programming, with classes, inheritance, and methods, reusable dry code that reduces development time and enables write once, read anywhere.
Explore access modifiers in C++, including public, private, and protected, and how they enable data hiding by restricting class member access, with default private and public access from anywhere.
Learn how to declare a class in C++ using Visual Studio, define public data members like int and string, and explore basic object oriented programming concepts such as encapsulation.
Create and instantiate a C++ class object, assign values to public attributes, and access them with dot notation to print the object's data.
Learn class methods in C++, define functions inside or outside a class, use public access, instantiate objects, and call methods via the scope resolution operator and dot notation.
Explore adding parameters to methods inside and outside a class, and passing data arguments to a public speed method.
Explore class constructors in C++, including the default constructor, public access, and automatic invocation during object creation, with examples of a car class and future data-passing topics.
Learn to implement a parameterized class constructor in c++ by passing brand, model, and year to initialize data members and access them via object dot notation.
Explore destructors in c++ as the counterpart to constructors, including defining a tilde destructor, its lack of parameters, and automatic invocation when objects are destroyed.
Implement get and set methods to access a private price attribute in a car class, using public getters and setters to control access across the project.
Learn how to use public, private, and protected access modifiers to control data members, test access via objects, and understand default private behavior when modifiers are absent.
Learn how static data members and static member functions work in C++, sharing a single class-wide copy across all objects, with examples using a car class and incrementing behavior.
Explore C++ objects and methods, use the constant keyword with constant objects and functions, and work with pointers and arrays of objects to pass data in object oriented programs.
Explore creating a class and its objects, and access private members via a pointer using the access operator, including constructors and passing objects through pointers.
Build and manage an array of student objects in C++, using get data and put data to collect and display ids and names, with dynamic arrays and csv storage.
Explore operator overloading in C++ by examining the equality operator, stream insertion and extraction, arithmetic assignment, unary and subscript operators, type conversion, and inline functions, with real-world examples.
Learn how to overload the equality operator in a simple C++ class, comparing two objects' numbers with a custom operator== and handling input and output.
Learn to overload the stream insertion and extraction operators for a complex class in C++, using friend declarations and i/o streams to read and write real and imaginary parts.
Explore how to overload the stream extraction operator in C++ using friend classes and custom complex types, enabling seamless data input and output with istream and ostream.
Overload the binary plus operator in C++ to add two numbers within a class, using input methods and a print function to display the result.
Overload the assignment operator for a complex class with real and imaginary parts, demonstrating copy semantics between objects and printing their values.
Learn how to overload the unary ++ operator in C++ by implementing pre-increment behavior in a simple class, illustrating value increment and output.
Explore how inline functions work in C++, using the inline keyword to enable compiler inlining, which copies code at call sites as shown with a max example.
Explore C++ inheritance and polymorphism, covering protected members, constructors, and overriding with virtual destructors. Learn abstraction, class design, deep inheritance, and multiple inheritance in practical programs.
Explore C++ inheritance by creating a parent vehicle class and a derived car class, reusing brand and model and the honk method through public inheritance, showcasing code reuse and accessibility.
Explore protected members in C++ by examining base and derived classes, access modifiers, and how a protected string color is accessed within derived classes.
Explore constructors in C++ across base and derived classes, including multiple inheritance, public access, and how to instantiate objects to invoke base and derived constructors.
Learn how destructors work in c++, using the tilde with the class name, observe destructor calls for multiple objects, and apply this in inheritance contexts.
Explore function overriding in C++ by comparing a base vehicle print method with a derived car version, and observe how independent objects reveal overridden behavior.
Explore polymorphism in C++ through function overloading, using the same function name with int, double, and multiple parameter signatures, with the compiler selecting the correct overload.
Learn how abstract classes with pure virtual functions define a common interface for shapes, then implement Circle and Square subclasses that compute areas from user-provided dimensions via inheritance.
Discover how the final keyword prevents inheritance for classes and structs in C++, preventing base-to-derived relationships. See how applying final makes a base class non-inheritable, securing your design.
Explore deep inheritance and methods in C++ through a multi-inheritance example that aggregates match scores with set and show functions.
Demonstrates multiple inheritance in C++ by building a bats class that inherits from mammal and winged animal, using constructors and object instantiation to reuse parent behavior.
Explore what exceptions are and how to handle errors in C++ using try-catch blocks and throw statements to gracefully manage runtime issues.
Throw an exception during program execution using a simple age check to illustrate error handling. Catch the exception to display messages and control flow, distinguishing runtime errors from compile-time errors.
Catch and display exceptions in a C++ age-check, where underage input triggers an exception shown in output. Valid ages, like 25, pass with no error; the developer handles the exception.
Learn to create a custom C++ exception class by inheriting from std::exception, use throw and catch blocks, and handle memory errors with the standard exception library.
Explore C++ templates, including functional and class templates with multiple parameters, and learn how to write complex classes in C++ programs.
Explore function templates with multiple arguments, enabling type-agnostic operations by defining a single template that handles different data types and can be called with mixed inputs.
Explore how to overload a function template by using the same function name with different parameter counts, and see how the compiler automatically resolves calls regardless of data types.
Learn how to create a class template in C++ using the template keyword to build a generic calculator class that adds two numbers across any data type.
Explores class templates with multiple parameters in C++, showing how to define, instantiate, and use constructors and methods to add and display values across int and float types.
The "Learn C++ Advanced: Master Classes on OOPs and Templates" course is your gateway to mastering advanced concepts in C++ programming, focusing on Object-Oriented Programming (OOP) and Templates. Tailored for intermediate developers, this course equips you with the skills needed to create scalable, reusable, and efficient software solutions.
Dive deep into Object-Oriented Programming (OOP), starting with the principles of encapsulation, inheritance, polymorphism, and abstraction. Learn to design and implement classes, work with constructors and destructors, and manage object lifecycles effectively. Explore virtual functions and dynamic binding to create flexible and extendable codebases. Advanced topics like operator overloading, friend functions, and abstract classes are also covered to enhance your programming toolkit.
update: Learn the top AI tools every professional needs to boost productivity
Move on to Templates, one of C++'s most powerful features for creating generic and reusable code. Understand the nuances of function templates and class templates, and learn how to build type-safe and efficient solutions for complex problems. Discover the Standard Template Library (STL), including vectors, lists, maps, and algorithms, to write robust and optimized code with minimal effort.
Throughout the course, you’ll work on hands-on projects and practical exercises that reinforce your learning. By the end, you’ll be equipped with a deep understanding of advanced C++ features, enabling you to build sophisticated, high-performance applications.
Take your C++ expertise to the next level. Enroll now to master OOPs and Templates in C++ and become a confident, advanced-level programmer!