Udemy
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
Development
Web Development Data Science Mobile Development Programming Languages Game Development Database Design & Development Software Testing Software Engineering Development Tools No-Code Development
Business
Entrepreneurship Communications Management Sales Business Strategy Operations Project Management Business Law Business Analytics & Intelligence Human Resources Industry E-Commerce Media Real Estate Other Business
Finance & Accounting
Accounting & Bookkeeping Compliance Cryptocurrency & Blockchain Economics Finance Finance Cert & Exam Prep Financial Modeling & Analysis Investing & Trading Money Management Tools Taxes Other Finance & Accounting
IT & Software
IT Certification Network & Security Hardware Operating Systems Other IT & Software
Office Productivity
Microsoft Apple Google SAP Oracle Other Office Productivity
Personal Development
Personal Transformation Personal Productivity Leadership Career Development Parenting & Relationships Happiness Esoteric Practices Religion & Spirituality Personal Brand Building Creativity Influence Self Esteem & Confidence Stress Management Memory & Study Skills Motivation Other Personal Development
Design
Web Design Graphic Design & Illustration Design Tools User Experience Design Game Design Design Thinking 3D & Animation Fashion Design Architectural Design Interior Design Other Design
Marketing
Digital Marketing Search Engine Optimization Social Media Marketing Branding Marketing Fundamentals Marketing Analytics & Automation Public Relations Advertising Video & Mobile Marketing Content Marketing Growth Hacking Affiliate Marketing Product Marketing Other Marketing
Lifestyle
Arts & Crafts Beauty & Makeup Esoteric Practices Food & Beverage Gaming Home Improvement Pet Care & Training Travel Other Lifestyle
Photography & Video
Digital Photography Photography Portrait Photography Photography Tools Commercial Photography Video Design Other Photography & Video
Health & Fitness
Fitness General Health Sports Nutrition Yoga Mental Health Dieting Self Defense Safety & First Aid Dance Meditation Other Health & Fitness
Music
Instruments Music Production Music Fundamentals Vocal Music Techniques Music Software Other Music
Teaching & Academics
Engineering Humanities Math Science Online Education Social Science Language Teacher Training Test Prep Other Teaching & Academics
AWS Certification Microsoft Certification AWS Certified Solutions Architect - Associate AWS Certified Cloud Practitioner CompTIA A+ Cisco CCNA Amazon AWS CompTIA Security+ Microsoft AZ-900
Graphic Design Photoshop Adobe Illustrator Drawing Digital Painting InDesign Character Design Canva Figure Drawing
Life Coach Training Neuro-Linguistic Programming Personal Development Personal Transformation Mindfulness Life Purpose Meditation CBT Emotional Intelligence
Web Development JavaScript React CSS Angular PHP Node.Js WordPress Vue JS
Google Flutter Android Development iOS Development React Native Swift Dart Programming Language Mobile Development Kotlin SwiftUI
Digital Marketing Google Ads (Adwords) Social Media Marketing Google Ads (AdWords) Certification Marketing Strategy Internet Marketing YouTube Marketing Email Marketing Retargeting
Microsoft Power BI SQL Tableau Business Analysis Data Modeling Business Intelligence MySQL Data Analysis Blockchain
Business Fundamentals Entrepreneurship Fundamentals Business Strategy Business Plan Startup Freelancing Online Business Blogging Home Business
Unity Game Development Fundamentals Unreal Engine C# 3D Game Development C++ 2D Game Development Unreal Engine Blueprints Blender
2021-02-25 09:54:09
30-Day Money-Back Guarantee
Development Programming Languages C++

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

The most comprehensive C++ tutorial with C++11/14/17 features
Rating: 4.5 out of 54.5 (2,924 ratings)
14,592 students
Created by Umar Lone
Last updated 4/2021
English
English
30-Day Money-Back Guarantee

What you'll 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
Curated for the Udemy for Business collection

Course content

18 sections • 221 lectures • 18h 53m total length

  • Preview03:01
  • Source Code
    00:02
  • Required software
    00:25
  • Visual Studio 2015 Installation
    04:32
  • Visual Studio 2017 Installation
    02:44
  • Code::Blocks Installation
    05:06
  • Cevelop Installation
    05:31
  • XCode Installation on MacOS
    03:32
  • Course Slides
    00:11

  • What is C++?
    Preview03:31
  • First C++ Program
    09:12
  • The C++ Compilation Process
    03:09
  • Primitive Types & Variables
    07:57
  • Basic Input/Output
    05:56
  • Functions Basics - Part I
    09:13
  • Functions Basics - Part II
    09:05
  • Overview of Debugging in Visual Studio
    05:40
  • Preview09:21
  • Pointers
    08:25
  • Assignment
    00:17
  • Reference
    05:32
  • Assignment
    00:12
  • Reference Vs Pointer
    06:58
  • The const Qualifier
    04:19
  • const Qualifer & Compound Types
    07:30
  • Assignment
    00:23
  • Automatic Type Inference (C++11)
    07:00
  • Basics Quiz - I
    5 questions
  • Range-Based For Loop - I (C++11)
    04:32
  • Range-Based For Loop - II (C++11)
    06:18
  • Function Overloading
    Preview13:27
  • Default Function Arguments
    03:43
  • Inline Functions
    07:36
  • Function Pointers
    04:53
  • Namespace
    09:24
  • Basics Quiz - II
    7 questions

  • Dynamic Memory Allocation - Part I (malloc function)
    09:36
  • Dynamic Memory Allocation - Part II (new operator)
    06:19
  • Dynamic Memory Allocation - Part III (new[] operator)
    06:40
  • Dynamic Memory Allocation - Part IV (2D arrays)
    05:07
  • Dynamic Memory Allocation - Source Code Only
    00:02

  • Object Oriented Programming Basics
    05:50
  • Class
    05:31
  • Constructor & Destructor
    04:28
  • Structures
    02:38
  • Non-static Data Member Initializers (C++11)
    04:39
  • this Pointer
    04:46
  • Constant Member Functions
    03:14
  • Static Class Members
    05:12
  • Copy Constructor - Part I
    04:52
  • Copy Constructor - Part II
    04:40
  • Delegating Constructors (C++11)
    04:01
  • Default & Deleted Functions (C++11)
    05:18
  • Quiz I
    8 questions

  • Preview07:10
  • Move Semantics - Basics (C++11)
    03:23
  • Move Semantics - Implementation (C++11)
    03:45
  • Rule of 5 & 0
    14:30
  • Copy Elision
    09:01
  • std::move Function (C++11)
    07:52
  • Quiz
    7 questions

  • Operator Overloading Demo Code
    00:05
  • Operator Overloading - Part I (Basics)
    08:28
  • Operator Overloading - Part II (Assignment Operator)
    04:18
  • Operator Overloading - Part III (Global Overloads)
    05:48
  • Operator Overloading - Part IV (Friend Keyword)
    02:29
  • Operator Overloading - Part V (Smart Pointer Basics)
    05:04
  • Operator Overloading - Part VI (Smart Pointers in C++11)
    04:34
  • Operator Overloading - Part VII (Rules)
    01:55
  • Type Conversions - Part I (Basics)
    05:56
  • Type Conversions - Part II (Primitive to User Type)
    05:39
  • Type Conversions - Part III (User to Primitive Type)
    02:50
  • Initialization Vs. Assignment & Member Initialization List
    05:18
  • Quiz
    8 questions

  • Smart Pointers - I
    05:11
  • Smart Pointers - II
    10:11
  • Smart Pointers - III
    10:27
  • Smart Pointers - IV
    08:49
  • Smart Pointers - V
    06:26
  • Smart Pointers - VI
    10:27

  • Enums - Part I (Basics)
    03:42
  • Enums - Part II (Scoped Enums C++11)
    05:32
  • Strings - Part I (Raw Strings)
    06:49
  • Strings - Part II (std::string)
    11:41
  • Assignment I
    00:14
  • Strings - Part III (String Streams)
    09:45
  • Assignment II
    00:24
  • User-Defined Literals
    05:59
  • Constant Expressions - constexpr (C++11)
    09:24
  • std::initializer_list (C++11)
    08:27
  • Dynamic Array (std::vector)
    08:43
  • Assignment III
    00:19
  • Union - I
    04:51
  • Union - II
    04:56
  • Quiz
    5 questions

  • Account Hierarchy Source Code
    00:06
  • Inheritance & Composition
    06:01
  • Inheritance & Access Modifiers
    03:55
  • Project - I (Introduction)
    02:06
  • Project - II (Account & Savings Class)
    06:59
  • Assignment
    00:14
  • Project - III (C++11 Inheriting Constructors)
    06:31
  • Project - IV (Virtual Keyword)
    08:53
  • Quiz I
    6 questions
  • Project -V (Virtual Mechanism - 1)
    07:11
  • Preview06:42
  • Project - Part VIII (override & final specifier in C++11)
    06:13
  • Project - VIII (Object Slicing)
    05:45
  • Project - IX (typeid Operator)
    07:11
  • Project - Part X (dynamic_cast Operator)
    06:08
  • Abstract Class
    06:03
  • Multiple (Diamond) Inheritance
    09:22
  • Quiz II
    5 questions

  • Exception Handling - Part I (Basics)
    07:59
  • Exception Handling - Part II (Multiple Catch Blocks)
    03:58
  • Exception Handling - Part III (Stack Unwinding)
    06:31
  • Exception Handling - Part IV (Nested Exceptions)
    05:11
  • Exception Handling - Part V (Constructor & Destructor)
    07:06
  • Exception Handling - Part VI - (noexcept keyword in C++11)
    08:20
  • Quiz
    5 questions

Requirements

  • Basic programming knowledge in any computer language
  • Some experience of writing programs in any language
  • Modern C++ compiler, preferably Visual Studio 2015/17/19 Community (or XCode, Clang, g++, Cevelop, Eclipse CDT, Code::Blocks)

Description

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

Who this course is for:

  • 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++

Featured review

Abhishek Purandare
Abhishek Purandare
2 courses
2 reviews
Rating: 5.0 out of 58 months ago
Probably the most comprehensive course out there on c++11 and above. The instructor goes through the scenarios where and when the concepts are used. Although c++ is a very vast language. I think this course goes through some of the most frequently used concepts in the industry. Well done!

Instructor

Umar Lone
Trainer, developer & founder at Poash Technologies
Umar Lone
  • 4.5 Instructor Rating
  • 4,501 Reviews
  • 48,947 Students
  • 7 Courses

Civil engineer who found his calling in software development. Never worked as a Civil engineer, jumped at the first chance and started teaching C++ & Visual C++ 15 years ago. Currently, trains software professionals in various software companies in different technologies, such as Modern C++, Advanced C++, STL, Design Patterns, Android, Unity, Linux, etc. Very passionate about teaching and has trained more than 20,000 software professionals in a teaching career spanning more than 17 years. An avid gamer, currently trying his hand with game development in Unity & Unreal. Has a few Android applications to his credit, including one on Design Patterns.

Only thing he likes more than C++ is Modern C++.

  • Udemy for Business
  • Teach on Udemy
  • Get the app
  • About us
  • Contact us
  • Careers
  • Blog
  • Help and Support
  • Affiliate
  • Impressum Kontakt
  • Terms
  • Privacy policy
  • Cookie settings
  • Sitemap
  • Featured courses
Udemy
© 2021 Udemy, Inc.