The course begins with setting up your development environment across different platforms, including Visual Studio, Code::Blocks, Cevelop, and XCode. You will then dive into the basic language facilities of C++, starting with variables, primitive types, functions, and debugging in Visual Studio. Later, you'll explore more advanced concepts such as dynamic memory allocation, object-oriented programming, classes, and constructors.



Foundations of Modern 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 modern C++ syntax, including C++11, 14, and 17 features
Understand the principles of memory management, including dynamic memory allocation and smart pointers
Gain expertise in object-oriented programming and learn how to design efficient C++ classes
Learn the intricacies of operator overloading and type conversion for cleaner, more flexible code.
Details to know

Add to your LinkedIn profile
April 2025
8 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 8 modules in this course
In this module, we will introduce the course structure, meet your instructor, and explore the setup process for different C++ development environments across various operating systems. You’ll gain the necessary tools to start writing C++ code.
What's included
7 videos2 readings
In this module, we will cover foundational C++ programming concepts such as the syntax of C++ programs, basic input/output, memory management, and the process of compiling and debugging. By the end of this section, you’ll be comfortable with C++ programming fundamentals.
What's included
22 videos1 assignment
In this module, we will dive into dynamic memory allocation in C++ with a focus on using the new and new[] operators for allocating memory on the heap. You will also learn how to handle 2D arrays in memory.
What's included
4 videos1 assignment
In this module, we will focus on object-oriented programming (OOP) in C++, teaching you how to work with classes, objects, and various OOP principles. You’ll also learn advanced concepts like static members and copy constructors.
What's included
12 videos1 assignment
In this module, we will explore the powerful concept of move semantics in C++, focusing on performance optimization. You’ll learn about value categories, the Rule of 5, and the std::move function.
What's included
6 videos1 assignment
In this module, we will cover operator overloading in detail, including basic to advanced concepts such as the assignment operator, global overloads, and type conversions. You will also explore smart pointers and their integration with operator overloading.
What's included
12 videos1 assignment
In this module, we will advance our memory management skills by learning about smart pointers in C++. You will explore how to use std::unique_ptr, std::shared_ptr, and std::weak_ptr to safely manage memory and prevent resource leaks.
What's included
11 videos1 assignment
In this module, we will expand your C++ knowledge with advanced topics like user-defined literals, constexpr, and std::initializer_list. You’ll also dive into dynamic arrays using std::vector and unions.
What's included
11 videos1 reading2 assignments
Instructor

Offered by
Explore more from Software Development
Why people choose Coursera for their career




New to Software Development? Start here.

Open new doors with Coursera 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 Coursera 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’ll 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’ll 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,