Udemy

Professional C++ 17: Object‑Oriented Programming

Enroll Now
  • 390 Students
  • Updated 3/2026
4.4
(45 Ratings)
CTgoodjobs selects quality courses to enhance professionals' competitiveness. By purchasing courses through links on our site, we may receive an affiliate commission.

Course Information

Registration period
Year-round Recruitment
Course Level
Study Mode
Duration
6 Hour(s) 11 Minute(s)
Language
English
Taught by
Chuck McCullough
Rating
4.4
(45 Ratings)
1 views

Course Overview

Professional C++ 17: Object‑Oriented Programming

Master modern C++ 17 with hands‑on OOP, memory mgmt, templates, smart pointers, design patterns, and real‑world coding

This intermediate‑level course teaches you how to build professional, modern applications using C++ 17 and the full power of object‑oriented programming. Designed for developers who already understand the basics of C++ or come from languages like C, Java, or C#, this course takes you deep into the features, patterns, and best practices used in real‑world C++ development.

You’ll learn how to design and implement classes, manage memory safely, apply test‑driven development, use templates effectively, and leverage modern C++ features such as smart pointers, lambda expressions, functional programming utilities, and the STL. Throughout the course, you’ll also explore design principles and patterns that help you write clean, maintainable, and scalable C++ applications.

Chuck’s courses have been delivered to thousands of developers worldwide, including teams at major corporations, government agencies, and the military. His training is used internally at Microsoft to teach professional developers modern C++ techniques.

By the end of this course, you’ll be ready to contribute meaningfully to C++ projects with a strong understanding of object‑oriented design, modern C++ features, and the practical skills needed to write high‑quality software.

What You’ll Learn

  • Implement classes, constructors, destructors, and const‑correct code

  • Apply test‑driven development to guide implementation

  • Master memory management with pointers, references, move/copy semantics

  • Handle exceptions and design robust error‑handling strategies

  • Overload operators correctly and effectively

  • Use and create function and class templates, including variadic templates

  • Work with smart pointers (unique, shared, weak) using RAII

  • Apply inheritance, overriding, and polymorphism with best practices

  • Understand interfaces, dependency inversion, and interface segregation

  • Use lambda expressions, functional utilities, and modern STL features

  • Explore GOF design patterns implemented in C++

  • Build clean, maintainable, object‑oriented C++ 17 applications

Course Content

  • 9 section(s)
  • 44 lecture(s)
  • Section 1 Introduction
  • Section 2 First Classes
  • Section 3 Memory
  • Section 4 Handling Errors
  • Section 5 Operator Overloading
  • Section 6 Templates & Smart Pointers
  • Section 7 Inheritance, Interfaces & Polymorphism
  • Section 8 Functional Programming
  • Section 9 Selected Standard Library Classes

What You’ll Learn

  • Modern, Object-Oriented C++ Programming - C++ 17, C++ 11, 14, & 17 Features and Idioms, Lambda Expressions & Functional Programming, Test Driven Development, Inheritance, Polymorphism, Interfaces - Good Design Technique, Containers & Algorithms


Reviews

  • J
    James Robb
    4.0

    Generally a very good course. I think ending is a bit clunky though. Section 9's lectures breeze through a lot of material very quickly, and the lectures even seem to suggest there will be a recorded lab, but no such material is available. Still, I would be likely to use it in the future as a refresher and would recommend others that are a bit rusty use it as a refresher as well.

  • M
    Mario David Riguera Castillo
    5.0

    I think the patience and the time that the teacher uses to transmit the knowledge is very good.

  • M
    Mahesh Kulkarni
    5.0

    It is very well designed and presented. I liked the presentation style from Mr. Chuck McCullough. I will definitely recommend this course for all those who knows C++ 98 or 11 and want to know more about C++ 14 and C++ 17

  • B
    Bill Jones
    4.0

    Overall the flow of the course was great, and having the source code as a resource but not yet fully completed which tied into the lessons kept me engage. Section 9 seemed more like an afterthought and didn't enhance the learning material from the prior sections. I would have liked to see more content with file or resource management as that would make it seem more Pro. A primer on GoogleTest would've been great as well. Overall I really enjoyed the course a lot.

Start FollowingSee all

We use cookies to enhance your experience on our website. Please read and confirm your agreement to our Privacy Policy and Terms and Conditions before continue to browse our website.

Read and Agreed