This advanced course focuses on object-oriented and generic programming in C++, emphasizing the core principles and techniques that every experienced developer should master. The course will guide you through advanced inheritance, exception handling, file input/output operations, and template programming, equipping you with the knowledge to write clean, efficient, and reusable C++ code. You鈥檒l also explore C++11/14/17 features such as lambda expressions, type traits, and advanced STL usage.



Advanced Object-Oriented & Generic Programming in C++
This course is part of Complete Modern C++ (C++11/14/17) Specialization

Instructor: Packt - Course Instructors
Included with
Recommended experience
What you'll learn
Master advanced object-oriented concepts such as inheritance, polymorphism, and multiple inheritance in C++
Gain a deep understanding of generic programming with templates, perfect forwarding, and variadic templates
Understand the inner workings of exception handling and how to handle nested exceptions, stack unwinding, and optimize with noexcept
Harness the power of C++'s Standard Template Library (STL), including custom containers and performance optimization with Big-O notation
Skills you'll gain
Details to know

Add to your LinkedIn profile
April 2025
7 assignments
See how employees at top companies are mastering in-demand skills

Build your subject-matter expertise
- Learn new concepts from industry experts
- Gain a foundational understanding of a subject or tool
- Develop job-relevant skills with hands-on projects
- Earn a shareable career certificate


Earn a career certificate
Add this credential to your LinkedIn profile, resume, or CV
Share it on social media and in your performance review

There are 6 modules in this course
In this module, we will explore core concepts of object-oriented programming including inheritance, composition, and access modifiers. We will also walk through a practical project that covers key OOP principles, such as virtual functions, constructor inheritance, and the use of dynamic_cast and typeid. By the end, you'll gain an understanding of abstract classes and the complexities of multiple inheritance.
What's included
14 videos2 readings1 assignment
In this module, we will cover the essentials of exception handling in C++, from the basics of throwing and catching exceptions to handling multiple catch blocks. We will also explore advanced topics like stack unwinding, nested exceptions, and the noexcept keyword. The module includes practical demonstrations for managing errors efficiently within your code.
What's included
6 videos1 assignment
In this module, we will introduce various file I/O operations, including reading and writing text files, handling errors, and using the C++17 Filesystem library. You'll also create a utility to copy files and delve into character and binary I/O for more complex file manipulations.
What's included
7 videos1 assignment
In this module, we will dive into templates, one of the most powerful features in C++. We鈥檒l cover everything from basic template usage to advanced topics like perfect forwarding, variadic templates, and type traits. You'll also learn how to specialize templates and work with class templates in various contexts.
What's included
15 videos1 assignment
In this module, we will explore lambda expressions in C++11, showing how they simplify code by replacing function objects and callbacks. You鈥檒l also learn about lambda captures, including capturing variables by value or reference, and dive into the inner workings of lambda expressions for a deeper understanding.
What's included
8 videos1 assignment
In this module, we will cover the Standard Template Library (STL), focusing on key containers like std::vector, std::map, and std::unordered_map. You鈥檒l also learn how to evaluate algorithm performance using Big O notation, and gain hands-on experience customizing algorithms with function objects and lambda expressions.
What's included
13 videos1 reading2 assignments
Instructor

Offered by
Explore more from Software Development
University of London
Simplilearn
University of London
Why people choose 糖心vlog官网观看 for their career




New to Software Development? Start here.

Open new doors with 糖心vlog官网观看 Plus
Unlimited access to 10,000+ world-class courses, hands-on projects, and job-ready certificate programs - all included in your subscription
Advance your career with an online degree
Earn a degree from world-class universities - 100% online
Join over 3,400 global companies that choose 糖心vlog官网观看 for Business
Upskill your employees to excel in the digital economy
Frequently asked questions
Yes, you can preview the first video and view the syllabus before you enroll. You must purchase the course to access content not included in the preview.
If you decide to enroll in the course before the session start date, you will have access to all of the lecture videos and readings for the course. You鈥檒l be able to submit assignments once the session starts.
Once you enroll and your session begins, you will have access to all videos and other resources, including reading items and the course discussion forum. You鈥檒l be able to view and submit practice assessments, and complete required graded assignments to earn a grade and a Course Certificate.
More questions
Financial aid available,