Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
C++ Mastery Course - Online Learning with Certificate
dsa banner mobiledsa banner

Unsure where
to begin?

Track
Certificate

C++ Mastery

4.8+
16 reviews
Advanced
This track covers both fundamental and advanced C++ techniques, enabling confident development of efficient, scalable, and secure applications. It explores key principles of object-oriented programming and template metaprogramming. Show more
c++
Boost your Tech Skills!
with up to 55% off
What you'll get with our subscription:
  • Access to 85+ top-rated coursesAccess to 85+ top-rated courses
  • AI-driven LearningAI-driven Learning
  • Workspaces for practicing your skillsWorkspaces for practicing your skills
  • Personalized study tracksPersonalized study tracks
  • Certificates of completionCertificates of completion
Training 2 or more people?
Get your team access to Codefinity courses anytime, anywhere.
Try Codefinity Teams
What you will learn
  • Master Object-Oriented Programming (OOP) with classes, objects, methods, and static members
  • Build modular and scalable code using polymorphism, encapsulation, and inheritance
  • Manage memory efficiently with smart pointers
  • Create reusable, type-independent code with function and class templates
  • Explore advanced topics like memory management, performance optimization, and best practices
  • chapters
    81 chapters
  • hours
    11 hours
  • tasks
    79 tasks
Trusted by employees of leading companies
GoogleIntelTwitterFedExMetaNikeAmazonMicrosoftTesla
Learning track content
Module 1 / C++ OOP
Encapsulation is one of the fundamental principles of object-oriented programming (OOP) that facilitates the creation of modular and maintainable code. Here, you will explore the significance of Data Hiding, Access Control, Mutator, and Accessor Methods, elucidating their pivotal roles in code maintenance and modularity.
In this section you will learn about fundamental mechanism of object-oriented programming that enables code reuse and promotes the creation of hierarchical relationships among classes.
Polymorphism is a foundational concept in OOP that enables the creation of flexible and extensible code structures. You will learn about virtual function, abstract classes and operator overloading and their pivotal roles in promoting code flexibility and scalability.
Module 2 / C++ Templates
This section introduces templates in programming, guiding you through creating your first template and using the template function.
In this section you will learn role of templates in reducing code duplication, handling multiple argument types, using typename parameters as return types, and distinguishing between implicit and explicit type specification.
This section introduces class templates in C++ and their use in creating flexible data structures. It covers templates classes related topics.
This section introduces template specialization in C++, explaining how it allows for customized behavior of templates for specific types. It covers the usage of both full and partial template specialization and discusses template constraints to enforce specific conditions on template parameters.
Module 3 / C++ Smart Pointers
In this section, we will introduce the concepts of smart pointers and references in C++, delve into why they are so important, and explore their use cases and benefits.
This section examines shared pointers, investigating their functionality, benefits, real-world applications in programming and what sets unique pointers apart
In this section, we will explore weak pointers, comprehending their nature, creating and utilizing them effectively, resolving circular references through weak pointers, and examining key functions associated with weak pointers.
This section addresses the distinctions between references and pointers, emphasizing their differences and similarities. It covers the concept of constant references and immutability, provides guidance on when to utilize references versus smart pointers versus raw pointers, and outlines best practices for working with references in programming contexts.
This section covers custom deleters for smart pointers, real-world smart pointer applications, performance considerations, and a detailed comparison of shared, unique, and weak pointers.
Requirements
  1. A computer with a browser - all browsers are supported.
  2. Your enthusiasm to enhance your tech skills.
  3. Everything else needed to start learning and practicing is already included in this course.
Over 200,000 5-star ratings and counting
Ruslan Kravchuk
The main thing is to learn and not give up
The material is good, there is a lot to learn, all in order to become better and the main thing is to learn what you want....
Matteo Comune
Thanks to them I'm learning a lot…
Thanks to them I'm learning a lot faster because they help you to understand everything from scratch. It's the best website that helps people with no background in IT...
Yuliana Cadavid
great course for beginners
great course for beginners, they test your knowledge in every lesson...
Elpunzon
I am enjoying my Codefinity experience…
I am enjoying my Codefinity experience learning Python. The self-paced way of learning is great because I can fit it into my schedule...
Alexandru Alexandru
Is nice to learn from codefinity
Is nice to learn from codefinity. Its easy and have good examples on what I learned here...
jacob Templet
Easy to follow along with and provides…
Easy to follow along with and provides challenge in my every day life. The challenge keeps me wanting to learn day after day...
Elan
Codefinity is a comprehensive learning…
Codefinity is a comprehensive learning tool to help you develop your skills as a software engineer or data scientist. The exercises are fun and a good way to sharpen your skills...
Thibault
First time learning how to code
First time learning how to code and successfully doing so with codefinity - thank you...
Adrien Morel
Well designed for total beginners
Well designed for total beginners, incremental progress and makes me feel confident....
_Gracy
it's simply perfectly well explained
it's simply perfectly well explained! so far I have not experienced any difficulty because everything is so well managed...
Ruslan Kravchuk
The main thing is to learn and not give up
The material is good, there is a lot to learn, all in order to become better and the main thing is to learn what you want....
Matteo Comune
Thanks to them I'm learning a lot…
Thanks to them I'm learning a lot faster because they help you to understand everything from scratch. It's the best website that helps people with no background in IT...
Yuliana Cadavid
great course for beginners
great course for beginners, they test your knowledge in every lesson...
Elpunzon
I am enjoying my Codefinity experience…
I am enjoying my Codefinity experience learning Python. The self-paced way of learning is great because I can fit it into my schedule...
Alexandru Alexandru
Is nice to learn from codefinity
Is nice to learn from codefinity. Its easy and have good examples on what I learned here...
jacob Templet
Easy to follow along with and provides…
Easy to follow along with and provides challenge in my every day life. The challenge keeps me wanting to learn day after day...
Elan
Codefinity is a comprehensive learning…
Codefinity is a comprehensive learning tool to help you develop your skills as a software engineer or data scientist. The exercises are fun and a good way to sharpen your skills...
Thibault
First time learning how to code
First time learning how to code and successfully doing so with codefinity - thank you...
Adrien Morel
Well designed for total beginners
Well designed for total beginners, incremental progress and makes me feel confident....
_Gracy
it's simply perfectly well explained
it's simply perfectly well explained! so far I have not experienced any difficulty because everything is so well managed...
Certificate of Completion
Data Engineer
Certificate of Completion
Showcase your newly acquired skills. You've earned it
Discover more
Learning tracks
track
lockOnly for Ultimate
track image

Web Development with C#

laptop7 Courses
list405 Tasks
Beginner
4.7
(2244)
track
lockOnly for Ultimate
track image

Python from Zero to Hero

laptop6 Courses
list242 Tasks
Beginner
4.7
(7994)
track
lockOnly for Ultimate
track image

SQL from Zero to Hero

laptop4 Courses
list143 Tasks
Beginner
4.7
(2488)
track
lockOnly for Ultimate
track image

С++ Essentials

laptop6 Courses
list175 Tasks
Beginner
4.4
(407)
track
lockOnly for Ultimate
track image

Game Development with Unity

laptop4 Courses
list208 Tasks
Beginner
4.7
(55)
track
lockOnly for Ultimate
track image

Become a React Developer

laptop5 Courses
list119 Tasks
Intermediate
4.6
(58)
track
lockOnly for Ultimate
track image

Excel Essentials

laptop3 Courses
list52 Tasks
Beginner
4.7
(211)
track
lockOnly for Ultimate
track image

Data Analyst Foundation

laptop4 Courses
list159 Tasks
Beginner
4.8
(2330)
track
lockOnly for Ultimate
track image

Java Essentials

laptop6 Courses
list406 Tasks
Beginner
4.8
(172)
track
lockOnly for Ultimate
track image

Python Beyond Intermediate

laptop2 Courses
pencil-with-line1 Project
list114 Tasks
Beginner
4.6
(48)
track
lockOnly for Ultimate
track image

Full Stack Web Development

laptop7 Courses
list430 Tasks
Beginner
4.7
(792)
track
lockOnly for Ultimate
track image

Frontend Development Foundations

laptop6 Courses
list417 Tasks
Beginner
4.7
(762)
track
lockOnly for Ultimate
track image

Mastering Data Visualization

laptop5 Courses
list300 Tasks
Intermediate
4.7
(499)
track
lockOnly for Ultimate
track image

Supervised Machine Learning

laptop5 Courses
list140 Tasks
Intermediate
4.6
(115)
track
lockOnly for Ultimate
track image

Java Web

laptop6 Courses
list294 Tasks
Advanced
4.7
(1102)
track
lockOnly for Ultimate
track image

Become a QA Engineer

laptop5 Courses
list254 Tasks
Beginner
4.7
(666)
track
lockOnly for Ultimate
track image

Video Production with Adobe

laptop3 Courses
list177 Tasks
Beginner
5.0
(4)
track
lockOnly for Ultimate
track image

UI/UX Design Tools

laptop3 Courses
list207 Tasks
Beginner
5.0
(4)
Become a Development expert
  • Interactive exercisesInteractive exercises
  • Learning videosLearning videos
  • AI-assistant on all coursesAI-assistant on all courses
  • Workspaces for designing your own projectsWorkspaces for designing your own projects

Ready to get started?

ProBest intro offer
UltimateA complete experience to kickstart your career
85+ Top-Rated coursesBenefit accessBenefit access
Completion certificatesBenefit accessBenefit access
AI-Assistant in all coursesBenefit accessBenefit access
20+ hands-on Real-world projectsBenefit accessBenefit access
Personalized study tracksBenefit accessBenefit access
Unlimited workspacesBenefit accessBenefit access
Boost your Tech Skills!
with up to 55% off
What you'll get with our subscription:
  • Access to 85+ top-rated coursesAccess to 85+ top-rated courses
  • AI-driven LearningAI-driven Learning
  • Workspaces for practicing your skillsWorkspaces for practicing your skills
  • Personalized study tracksPersonalized study tracks
  • Certificates of completionCertificates of completion
Training 2 or more people?
Get your team access to Codefinity courses anytime, anywhere.
Try Codefinity Teams
We're sorry to hear that something went wrong. What happened?
some-alt