HOME > Development > Complete Modern C++ (C++111417)

Complete Modern C++ (C++111417)

  • Development
  • May 08, 2025
SynopsisComplete Modern C++ (C++11/14/17 , available at $149.99, has...
Complete Modern C++ (C++111417)  No.1

Complete Modern C++ (C++11/14/17), available at $149.99, has an average rating of 4.58, with 278 lectures, 15 quizzes, based on 6947 reviews, and has 35756 subscribers.

You will learn about Use C++ as an object-oriented language Demystify function & class templates Use STL components in your applications Write real-world applications in C++ Apply Modern C++ (C++11/14/17) in programs This course is ideal for individuals who are College students who want to learn Modern C++ or Expert C++ developers who want to migrate to Modern C++ or C++ developers with varying level of experience, who want to refresh basics of the C++ language and get acquainted with the new features or Software professionals who want to learn & implement Modern C++ or Anyone who is comfortable with other languages like C, Java, C#, Python, etc, and wants to learn & apply Modern C++ or Anyone interested in learning C++ It is particularly useful for College students who want to learn Modern C++ or Expert C++ developers who want to migrate to Modern C++ or C++ developers with varying level of experience, who want to refresh basics of the C++ language and get acquainted with the new features or Software professionals who want to learn & implement Modern C++ or Anyone who is comfortable with other languages like C, Java, C#, Python, etc, and wants to learn & apply Modern C++ or Anyone interested in learning C++.

Enroll now: Complete Modern C++ (C++11/14/17)

Summary

Title: Complete Modern C++ (C++11/14/17)

Price: $149.99

Average Rating: 4.58

Number of Lectures: 278

Number of Quizzes: 15

Number of Published Lectures: 240

Number of Published Quizzes: 13

Number of Curriculum Items: 293

Number of Published Curriculum Objects: 253

Original Price: $199.99

Quality Status: approved

Status: Live

What You Will Learn

  • Use C++ as an object-oriented language
  • Demystify function & class templates
  • Use STL components in your applications
  • Write real-world applications in C++
  • Apply Modern C++ (C++11/14/17) in programs
  • Who Should Attend

  • College students who want to learn Modern C++
  • Expert C++ developers who want to migrate to Modern C++
  • C++ developers with varying level of experience, who want to refresh basics of the C++ language and get acquainted with the new features
  • Software professionals who want to learn & implement Modern C++
  • Anyone who is comfortable with other languages like C, Java, C#, Python, etc, and wants to learn & apply Modern C++
  • Anyone interested in learning C++
  • Target Audiences

  • College students who want to learn Modern C++
  • Expert C++ developers who want to migrate to Modern C++
  • C++ developers with varying level of experience, who want to refresh basics of the C++ language and get acquainted with the new features
  • Software professionals who want to learn & implement Modern C++
  • Anyone who is comfortable with other languages like C, Java, C#, Python, etc, and wants to learn & apply Modern C++
  • Anyone interested in learning C++
  • Learn C++ in depth with modern features introduced with C++11/14/17

    Updated with C++17 features!

    C++ is a general purpose programming language invented by Bjarne Stroustrup. It is still one of the more popular programming languages, used for creating high performance applications across a wide variety of domains & platforms.

    In 2011, C++11 was born. This revision added lot of new features to the language and it got a new name, Modern C++. This emphasizes writing C++ code using modern features of the language such as move semantics, automatic type inference, threading, lambda expressions, smart pointers and a lot more. C++11 was followed by C++14, that added even more features and enhanced existing ones. C++17 released in 2017 added a filesystem library (covered in the course), parallel versions of STL algorithms, new library types such as std::optional, std::any and more.

    This course teaches C++ as an object oriented language with modern features. It focuses on teaching C++ concepts, both old and new, with clear examples. It builds upon the basic language facilities that are then used to build more complex programs with classes, operator overloading, composition, inheritance, polymorphism, templates, concurrency, etc. It even digs deep into assembly to understand few concepts better. After every few topics, a quiz is presented that tests your understanding of the previous topics. Have fun learning Modern C++.

    Note that this course is not for you if

    1. You have never programmed before

    2. You don’t know ANY programming language

    3. You want to learn basics of programming

    Update [April 19, 2020] : Biggest update so far. Added C++17 core language changes, template enhancement and new library types.

    Update [April 11, 2020] : Added content on copy elision, type traits, static_assert & generalized lambda capture, C++11 unions

    Update [Mar 25, 2020]: XCode installation & high-level concurrency (std::async)

    Update [Mar 1, 2019] : More videos added for memory management with smart pointers (shared_ptr, unique_ptr, weak_ptr_)

    Update [Oct 19, 2017] :Instructions added for installing Visual Studio Community 2017, Cevelop (Eclipse) & Code::Blocks

    Update [Sep 29, 2107] : Added more content on dynamic memory allocation (malloc, new[], 2D arrays, strings)

    Update [Sep 16, 2017] : C++ concurrency (std::thread, std::mutex, etc)

    Update [April 27, 2017] : Templates, Function Object, Lambda Expressions, Standard Template Library

    Update [Mar 23, 2017] : Virtual Inheritance, Exception handling, File I/O, std::filesystem (C++17)

    Update [Mar 4, 2017] : Strings, stringstreams, enums, inheritance, polymorphism

    Update [Feb 25, 2017] : Source Code of existing topics added

    Course Curriculum

    Chapter 1: Start Here

    Lecture 1: Introduction

    Lecture 2: Source Code

    Lecture 3: Course Slides

    Lecture 4: Required software

    Lecture 5: Visual Studio 2015 Installation (DEPRECATED)

    Lecture 6: Visual Studio 2017 Installation (DEPRECATED)

    Lecture 7: Visual Studio 2019 Installation

    Lecture 8: Code::Blocks Installation

    Lecture 9: Cevelop Installation

    Lecture 10: XCode Installation on MacOS

    Chapter 2: Basic Language Facilities

    Lecture 1: What is C++?

    Lecture 2: First C++ Program

    Lecture 3: The C++ Compilation Process

    Lecture 4: Primitive Types & Variables

    Lecture 5: Basic Input/Output

    Lecture 6: Functions Basics – Part I

    Lecture 7: Functions Basics – Part II

    Lecture 8: Overview of Debugging in Visual Studio

    Lecture 9: Uniform Initialization (C++11)

    Lecture 10: Pointers

    Lecture 11: Assignment

    Lecture 12: Reference

    Lecture 13: Assignment

    Lecture 14: Reference Vs Pointer

    Lecture 15: The const Qualifier

    Lecture 16: const Qualifer & Compound Types

    Lecture 17: Assignment

    Lecture 18: Automatic Type Inference (C++11)

    Lecture 19: Range-Based For Loop – I (C++11)

    Lecture 20: Range-Based For Loop – II (C++11)

    Lecture 21: Function Overloading

    Lecture 22: Default Function Arguments

    Lecture 23: Inline Functions

    Lecture 24: Function Pointers

    Lecture 25: Namespace

    Chapter 3: Memory Management – Part I

    Lecture 1: Dynamic Memory Allocation – Part I (malloc function)

    Lecture 2: Dynamic Memory Allocation – Part II (new operator)

    Lecture 3: Dynamic Memory Allocation – Part III (new[] operator)

    Lecture 4: Dynamic Memory Allocation – Part IV (2D arrays)

    Lecture 5: Dynamic Memory Allocation – Source Code Only

    Chapter 4: Classes & Objects

    Lecture 1: Object Oriented Programming Basics

    Lecture 2: Class

    Lecture 3: Constructor & Destructor

    Lecture 4: Structures

    Lecture 5: Non-static Data Member Initializers (C++11)

    Lecture 6: this Pointer

    Lecture 7: Static Class Members

    Lecture 8: Constant Member Functions

    Lecture 9: Copy Constructor – Part I

    Lecture 10: Copy Constructor – Part II

    Lecture 11: Delegating Constructors (C++11)

    Lecture 12: Default & Deleted Functions (C++11)

    Chapter 5: Move Semantics

    Lecture 1: L-values, R-values & R-value References (C++11)

    Lecture 2: Move Semantics – Basics (C++11)

    Lecture 3: Move Semantics – Implementation (C++11)

    Lecture 4: Rule of 5 & 0

    Lecture 5: Copy Elision

    Lecture 6: std::move Function (C++11)

    Chapter 6: Operator Overloading

    Lecture 1: Operator Overloading Demo Code

    Lecture 2: Operator Overloading – Part I (Basics)

    Lecture 3: Operator Overloading – Part II (Assignment Operator)

    Lecture 4: Operator Overloading – Part III (Global Overloads)

    Lecture 5: Operator Overloading – Part IV (Friend Keyword)

    Lecture 6: Operator Overloading – Part V (Smart Pointer Basics)

    Lecture 7: Operator Overloading – Part VI (Smart Pointers in C++11)

    Lecture 8: Operator Overloading – Part VII (Rules)

    Lecture 9: Type Conversions – Part I (Basics)

    Lecture 10: Type Conversions – Part II (Primitive to User Type)

    Lecture 11: Type Conversions – Part III (User to Primitive Type)

    Lecture 12: Type Conversions – Part IV (User Defined to User Defined)

    Lecture 13: Initialization Vs. Assignment & Member Initialization List

    Chapter 7: Memory Management – Part II

    Lecture 1: Raw Pointers

    Lecture 2: std::unique_ptr

    Lecture 3: Sharing Pointers

    Lecture 4: Sharing std::unique_ptr

    Lecture 5: std::shared_ptr

    Lecture 6: Weak Ownership

    Lecture 7: std::weak_ptr Internals

    Lecture 8: Circular References

    Lecture 9: Deleter

    Lecture 10: Dynamic Arrays

    Lecture 11: Make Functions

    Chapter 8: More C++ Goodies

    Lecture 1: Enums – Part I (Basics)

    Lecture 2: Enums – Part II (Scoped Enums C++11)

    Lecture 3: Strings – Part I (Raw Strings)

    Lecture 4: Strings – Part II (std::string)

    Lecture 5: Assignment I

    Instructors

  • Complete Modern C++ (C++111417)  No.2
    Umar Lone
    Trainer, developer & founder at Poash Technologies
  • Rating Distribution

  • 1 stars: 71 votes
  • 2 stars: 128 votes
  • 3 stars: 715 votes
  • 4 stars: 2681 votes
  • 5 stars: 3355 votes
  • Frequently Asked Questions

    How long do I have access to the course materials?

    You can view and review the lecture materials indefinitely, like an on-demand channel.

    Can I take my courses with me wherever I go?

    Definitely! If you have an internet connection, courses on Udemy are available on any device at any time. If you don’t have an internet connection, some instructors also let their students download course lectures. That’s up to the instructor though, so make sure you get on their good side!