Beginning C++ Programming - From Beginner to Beyond
4.6 (23,051 ratings)
Course Ratings are calculated from individual students’ ratings and a variety of other signals, like age of rating and reliability, to ensure that they reflect course quality fairly and accurately.
88,708 students enrolled

Beginning C++ Programming - From Beginner to Beyond

Obtain Modern C++ Object-Oriented Programming (OOP) and STL skills needed for game, system, and application development.
Bestseller
4.6 (23,020 ratings)
Course Ratings are calculated from individual students’ ratings and a variety of other signals, like age of rating and reliability, to ensure that they reflect course quality fairly and accurately.
88,708 students enrolled
Last updated 5/2020
English
English [Auto-generated], French [Auto-generated], 7 more
  • German [Auto-generated]
  • Indonesian [Auto-generated]
  • Italian [Auto-generated]
  • Polish [Auto-generated]
  • Portuguese [Auto-generated]
  • Romanian [Auto-generated]
  • Spanish [Auto-generated]
Current price: $96.99 Original price: $149.99 Discount: 35% off
21 hours left at this price!
30-Day Money-Back Guarantee
This course includes
  • 41.5 hours on-demand video
  • 2 articles
  • 66 downloadable resources
  • 37 coding exercises
  • Full lifetime access
  • Access on mobile and TV
  • Assignments
  • Certificate of Completion
Training 5 or more people?

Get your team access to 4,000+ top Udemy courses anytime, anywhere.

Try Udemy for Business
What you'll learn
  • Learn to program with one of the most powerful programming languages that exists today, C++.
  • Obtain the key concepts of programming that will also apply to other programming languages
  • Learn Modern C++ rather than an obsolete version of C++ that most other courses teach
  • Learn C++ features from basic to more advanced such as inheritance and polymorphic functions
  • Learn C++ using a proven curriculum that covers more material than most C++ university courses
  • Learn C++ from an experienced university full professor who has been using and teaching C++ for more than 25 years
  • Includes Quizzes, Live Coding Exercises, Challenge Coding Exercises and Assignments
Course content
Expand all 277 lectures 41:30:11
+ Introduction
5 lectures 20:00

In this video we provide an introduction to the course and instructor.

Preview 03:39

In this video we look at why it is so valuable to learn C++.

Preview 05:00

In this video we look at Modern C++ and the C++ Standard

Preview 02:58

In this video we take a conceptual look at the steps necessary to create and execute a C++ program.

How does all this work?
08:13

Please read the provided Frequently Asked Questions document for this course.

FAQ -- Please Read!
00:10
+ Installation and Setup
16 lectures 02:19:57

In this video we go over the various installation option in this section

Installation and Setup Overview
02:53

In this video we install the MinGW C++ compiler on Windows

Preview 09:25

In this video we install the CodeLite IDE on Windows

Installing CodeLite on Windows
03:41

In this video we configure the CodeLite IDE on Windows

Configuring CodeLite on Windows
20:39

In this video we install the C++ compiler on Mac OSX

Installing the C++ Compiler on Mac OSX
03:44

In this video we install the CodeLite IDE on Mac OSX

Installing CodeLite on Mac OSX
04:27

In this video we configure the CodeLite IDE on Mac OSX

Configuring CodeLite on Mac OSX
22:45

In this video we discuss using the command-line interface to compile and run C++ programs.

Preview 01:32

In this video we install the CodeLite IDE on Ubuntu Linux

Installing CodeLite on Ubuntu Linux
08:48

In this video we configure the CodeLite IDE on Ununtu Linux

Configuring CodeLite on Ubuntu Linux
19:00

In this video we create a default CodeLite Project Template so we can use it for new projects

Creating a Default CodeLite Project Template (All Versions)
08:06

In this video we describe how to use a simple text editor and the command-line to compile and run C++ programs on Windows.

Using the Command-Line Interface on Windows
09:43

In this video we describe how to use a simple text editor and the command-line to compile and run C++ programs on Mac OSX.

Using the Command-Line Interface on Mac OSX
07:49

In this video we describe how to use a simple text editor and the command-line to compile and run C++ programs on Ubuntu Linux.

Using the Command-Line Interface on Linux (Ubuntu)
08:55

In this video we look at using a web-based C++ compiler.

Preview 03:22

In this video we go over what is provided in the course resources and how to use the source code in your own projects.

Using the Included Source Code Course Resources
05:08
+ Curriculum Overview
3 lectures 09:33

In this video we will go over the course curriculum so that you know exactly what this course covers and at what level.

Preview 06:58

In this video we will go over the section challenge exercises and their purpose.

Preview 01:29

In this video we'll discuss the section quizzes and their role in the course.

Overview of the Section Quizzes
01:06
+ Getting Started
11 lectures 01:02:51

In this video we provide an overview of this section.

Section Overview
00:58

In this video we look at the CodeLite IDE Interface.

An Overview of the CodeLite Interface
14:52

In this video we will will write our first program using CodeLite IDE.

Writing our first program
08:23

In this video we will compile and build our first program using CodeLite IDE.

Building our first program
12:33
What are Compiler Errors?
09:07

In this video will discuss what compiler warnings are and what they mean to the programmer.

What are Compiler Warnings?
03:51

In this video we discuss linker errors and what causes them.

Preview 04:07

In this video we discuss run-time errors and give examples of some

What are Runtime Errors?
00:41

In this video we discuss logic errors and give a simple example.

Preview 01:49
Section Challenge
01:21
Section Challenge - Solution
05:09

Section 4 Quiz - Getting Started

Section 4 Quiz
10 questions
+ Structure of a C++ Program
7 lectures 42:36

In this video we provide an overview of this section.

Section Overview
00:56

In this video we will look at the basic structure of a simple C++ program.

Overview of the Structure of a C++ Program
04:20

In this video we will look at the #include pre-processor directive.

Preview 02:11

In this video we will look at the 2 types of C++ comments and discuss how to comment code.

Comments
07:29

In this video we will discuss the main function.

The main() function
03:05

In this video we will discuss the basics of namespaces and what they mean to a program.

Namespaces
03:56

In this video we will learn more about console input and output using cin and cout.

Basic Input and Output (I/O) using cin and cout
20:39
Using cout and the insertion operator to say Hi to Frank
1 question
Using cout and the insertion operator
1 question
Using cin and the extraction operator
1 question

Section 5 Quiz - Structure of a C++ Program

Section 5 Quiz
10 questions
+ Variables and Constants
10 lectures 01:13:03

In this video we provide an overview of this section.

Section Overview
01:10

In this video we discuss what variables are and why they are used.

What is a variable?
03:08

In this video we show how to declare and initialize variables.

Declaring and Initializing Variables
14:04
Declaring and Initializing Variables
1 question

In this video we describe global variables and their advantages and disadvantages.

Global Variables
03:23

In this video we discuss compiler errors and introduce some errors into out first program to see how to correct them.

Preview 15:59

In this video we see how we can use the sizeof operator to determine the size of a variable.

What is the Size of a Variable (sizeof)
06:52

In this video we discuss what constants are and why they are used.

What is a Constant?
05:03

In this video we will write a program using literal constants then refactor it to use declared constants.

Declaring and Using Constants
18:26
Section Challenge
01:50
Section Challenge - Solution
03:08

Section 06 Quiz - Variables and Constants

Section 06 Quiz
10 questions
+ Arrays and Vectors
9 lectures 56:13

In this video we provide an overview of this section.

Section Overview
01:07

In this video we discuss what an array is in C++.

What is an Array?
04:40

In this video we learn how to declare and initialize C++ arrays.

Declaring and Initializing Arrays
02:56

In this video we learn how to access individual array elements.

Accessing and Modifying Array Elements
14:13
Declaring, Initializing and Accessing an Array
1 question

In this video we create multi-dimensional arrays and learn how to access their elements.

Multidimensional Arrays
03:11

In this video will learn about vectors and see how to declare and initialize them.

Declaring and Initializing Vectors
06:26

In this video we learn how to access individual vector elements.

Accessing and Modifying Vector Elements
15:30
Declaring, Initializing and Accessing Vectors
1 question
Section Challenge - Solution
06:03

Section 07 Quiz - Arrays and Vectors

Section 07 Quiz
10 questions
+ Statements and Operators
14 lectures 01:48:26

In this video we provide an overview of this section.

Section Overview
02:02

In this video we learn what expressions and statements are in C++.

Expressions and Statements
03:20

In this video we discuss the C++ operators.

Using Operators
01:58

In this video we learn about the assignment operator.

The Assignment Operator
12:31

In this video we see how we can use the basic math operators +,-,*,/, and %

Arithmetic Operators
14:55
Using the Assignment Operator
1 question
Using the Arithmetic Operators
1 question

In this video we learn how to use the C++ increment (++) and decrement (--) operators.

Preview 13:11

In this video we learn how C++ handles expression when the operands of are different types.

Mixed Expressions and Conversions
12:56

In this video we learn how to compare C++ elements in C++ using the == operator.

Testing for Equality
09:04

In this video we learn how to use the C++ relational operators (<, <=, >, >=, and !)

Relational Operators
04:17

In this video we learn how to use the C++ logical operators (&&, !!, and !)

Logical Operators
15:48

In this video we learn how to use the C++ compound assignment operators (op=).

Preview 02:15

In this video we'll learn all about operator precedence in C++ which allows us control the order how expressions are evaluated.

Operator Precedence
03:48
Logical Operators and Operator Precedence - Can you work?
1 question
Section Challenge
02:30
Section Challenge - Solution
09:51

Section 08 Quiz - Statements and Operators

Section 08 Quiz
10 questions
+ Controlling Program Flow
17 lectures 03:27:54

In this video we provide an overview of this section.

Section Overview
03:06

In this video we learn about the C++ statements and how to make decisions.

if Statement
18:08
If Statement - Can you Drive?
1 question

In this video we learn about adding else logic to the if statement.

if else Statement
05:48
If-Else Statement - Can you Drive?
1 question

In this video we learn how to nest if statements to implement more complex conditions.

Nested if Statement
22:04
Nested If Statements - Can you Drive?
1 question

In this video we learn about the switch statement and how to support multiple conditions.

switch-case Statement
20:14
Switch Statement - Day of the Week
1 question

In this video discuss the conditional operator in C++.

Conditional Operator
10:37

In this video we discuss looping or iteration in C++

Looping
03:12

In this video we learn to iterate using the for loop.

for Loop
22:08
For loop - Sum of Odd Integers
1 question

In this video we learn to iterate over a range using the range-based for loop.

range-based for Loop
14:59
Using the range-based for loop
1 question

In this video we learn to iterate using the while loop.

while Loop
16:39
While loop exercise
1 question

In this video we learn to iterate using the do-while loop.

do while Loop
13:46

In this video we learn how to control looping using the continue and break statements.

Preview 02:33

In this video we learn about infinite loops and when to use them and avoid them.

Infinite Loops
03:17

In this video we learn how to nest loops to achieve multiple iterations.

Nested Loops
19:47
Nested Loops - Sum of the Product of all Pairs of Vector Elements
1 question
Section Challenge
06:09
Section Challenge - Solution Part 1
14:47
Section Challenge - Solution Part 2
10:40

Section 09 Quiz - Controlling Program Flow

​Section 09 Quiz
10 questions
+ Characters and Strings
8 lectures 01:18:10

In this video we provide an overview of this section.

Section Overview
01:54

In this video we learn about the library functions that work work with the char type.

Character Functions
02:30

In this video we learn about C-style strings.

C-Style Strings
07:45

In this video we learn to use C-style strings and the functions in string.h

Working with C-style Strings
13:45
Using C-style Strings
1 question

In this video we learn about the sthe std::string class in C++

Preview 15:28

In this video we learn how to use and manipulate C++ string with the string class methods.

Working with C++ Strings
16:45
Using C++ Strings - Exercise 1
1 question
Using C++ Strings - Exercise 2
1 question
Section Challenge
06:48
Section Challenge - Solution
13:15

Section 10 Quiz - Characters and Strings

​Section 10 Quiz
10 questions
In this assignment you will display a Letter Pyramid given a string of characters. This assignment will allow you to practice using loops, nested loops and std::string Please see the assignment instructions for details.
Challenge Assignment - Letter Pyramid
1 question
Requirements
  • Access to a computer running Windows, Mac OS X or Linux
Description

Which programming language is often seen as a badge of honor among software developers?  C++

Which programming language can you learn that when added to your resume,  will often get you a job interview?  C++ 

Which programming language is routinely ranked in the top 5 programming languages by popularity, and been consistently in the top 10 for close to 20 years?  C++

Why you should learn C++

Much, if not most of software written today is still written in C++ and this has been the case for many, many years. 

Not only is C++ popular, it is also a very relevant language. If you go to GitHub you will see that there are a huge number of active C++ repositories and C++ is also extremely active on stack overflow.

There are many, many leading software titles written entirely or partly in C++. These include the Windows, Linux and Mac OSX operating systems!

Many of the Adobe products such as Photoshop and Illustrator,  the mySQL and MongoDB database engines, and many many more are written in C++.

Leading tech companies use C++ for many of their products and internal research and development. These include Amazon, Apple, Microsoft, PayPal, Google, Facebook, Oracle and many more.

Can you see how learning C++ will open up more career opportunities for you?

If more professional companies are using C++, it stands to reason that there is going to be more of a demand for C++ programmers.

But the main reason programmers should probably learn C++  is because it is so powerful!

What do I mean by powerful?

C++ is super fast,  and is a general purpose programming language that supports both procedure and object oriented programming making it very flexible.

It can scale easily. And it can be portable as well.

C++ can do many things that other languages just can't.

That's why nearly every major language has a way to interface with code written in C++.

Since C++ has influenced so many languages, if you know C++ you'll likely see elements from C++ in new languages you learn.

How can a beginner learn C++ ?

Find a good course, taught by an instructor with many years of experience in C++ is critical, as is the need for the instructor to have the necessary skills to be able to teach you the language.

Frank Mitropolous, the instructor in this course has been using C++ for over 2 decades and has taught students in both university courses and industry training courses.  He even worked on a C++ compiler development project while he was in industry.

So not only will you be learning C++ from an expert C++ programmer, but you'll also be taught by an instructor who has successfully taught at university level for many years.

As a result, you can take this course with confidence, knowing that you will learn C++ the right way, and in the shortest possible timeframe.

Which version of C++ should I learn?

C++ has  had many version releases and updates over the years.  It's a sad fact that most C++ courses do not teach Modern C++, but focus on old, obsolete versions of C++.

Frank teaches you Modern C++ (specifically C++ 11 and C++ 14).  

Learn C++ the right way, with Modern C++, as taught by Frank in this course.

Is C++ difficult to learn?

With all the power and flexibility of C++ comes complexity.

There is no question that C++ is one of the most complex programming languages out there.

But with the right instructor, and the right training, you really can get up to speed with C++ quickly, and that's what this course is all about.

What will I learn in this course?

The course assumes no previous experience with C++ (or even programming in general), and you will end up with the skills to create your own programs in C++.

Key topics covered include.

* Looping with while, do/while for, range-based for statements and recursion
* Performing calculations and displaying results
* Functions
* Pointers
* Using existing classes and creating objects
* Creating your own classes
* Using Basic Standard Template Library classes such as Vector
* Constructors and Destructors
* Copy and Move semantics including Copy constructors, Move constructors, and copy and move assignment 
* How to overload operators
* Using inheritance and class hierarchies
* Using Polymorphic functions and dynamic binding 
* Using smart pointers
* Using stream I/O
* An introduction to the C++ STL
* An introduction to Exception Handling
* And much more.


How is this C++ course different to other courses?

You will learn Modern C++, for one.  Many, perhaps most other courses on Udemy teach you old, obsolete versions of C++.  If you are going to learn C++, it's imperitive that you learn the Modern version to maximise your career opportunities and to ensure your skills are up to date.

The course format includes theory and concepts which are then reinforced with live code examples. Often the C++ debugger is used to step through code and analyze variables to better understand the behavior of C++. The instructor also uses a pen tablet to write on the screen and provide even more visual explanations.

You won't find better C++ training anywhere, and you will struggle to find someone with as much industry and training experience than your instructor Frank has.

What do I get out of learning C++ ?

More career options for one!  C++ is one of the most popular programming languages used in games development.    It's also heavily used in embedded applications.  Your investment in time in learning C++ will reward you time and time again with more pay, and more opportunities, and frankly, more fun!

Are you ready to get started?

If you are ready to get that first paid programming job, or to move up to a more senior programming position, then this course is for you!

Your new job or consulting opportunity awaits!  

Why not get started today?

Click the Signup button to sign up for the course!

Who this course is for:
  • This course is perfect for absolute beginners with no previous coding experience, or anyone wanting to add C++ to their existing skillset.
  • Anyone looking to increase career options by learning one the most in-demand programming languages.