C++ Tutorial for Complete Beginners

How to program in the popular (and tricky!) C++ programming language, for complete beginners.
Rating: 4.4 out of 5 (35,605 ratings)
432,722 students
C++ Tutorial for Complete Beginners
Rating: 4.4 out of 5 (35,605 ratings)
432,722 students
You'll be able to develop powerful C++ programs
You'll be able to apply for C++ jobs, with at least a possibility of success
You'll understand the basics of computer programming, including Object Orientation

Requirements

  • You can use any C++ IDE (terms explained in the course) and compiler to follow this course; all the software you need is free, but you may need to do a little Googling to find explicit install instructions for your platform.
Description

This course teaches you the powerful, fast and popular C++ programming language from scratch, assuming only basic computer knowledge. If you want to develop apps that squeeze the most power from your computer -- high-end desktop games or complex artificial intelligence programs, for instance -- or if you want to use a language that let's you get close to your machine and access all of your computer's hardware, C++ is the language for you. While C++ is quite challenging, in this course we'll learn the basics step by step; towards the end of the course you'll learn how to create a beautiful "particle fire" program, including a smattering of the basic principles of game development.

Who this course is for:
  • This course is intended for those who are computer literate and familiar with downloading and unzipping files, using the Internet and so on, and who want to learn to program
  • C++ is one of the more challenging computer programming languages -- so expect to encounter difficulties! You will need a degree of patience and persistence.
Course content
11 sections • 82 lectures • 17h 59m total length
  • Introducing C++
    14:55
  • Screen Resolution
    00:23
  • Setup and Installation
    08:38
  • Hello World C++
    23:15
  • Outputting Text
    19:17
  • Variables
    16:23
  • Strings - Working with Text
    07:29
  • User Input
    09:35
  • Binary Numbers and Computer Memory
    05:57
  • Integer Types
    13:02
  • Floating Point Types
    14:41
  • Other Types: Char and Bool
    11:34
  • If
    12:25
  • If-Else
    13:15
  • If-Else If-Else
    05:52
  • Comparing Floats
    04:03
  • C++ Conditions
    21:17
  • While Loops
    09:34
  • Do-While Loops
    13:48
  • "For" Loops
    06:43
  • Break and Continue
    10:50
  • Arrays - Lists of Data
    17:24
  • Multidimensional Arrays
    11:43
  • Sizeof and Arrays
    07:03
  • Sizeof Multidimensional Arrays
    06:58
  • Switch
    09:45
  • Functions
    10:06
  • Return Values
    06:31
  • Function Parameters
    07:05
  • Headers and Prototypes
    13:54
  • Classes
    18:15
  • Data Members
    17:51
  • C++ Constructors and Destructors
    16:35
  • C++ Getters and Setters
    13:15
  • C++ String Streams
    08:44
  • Overloading Constructors
    13:07
  • The "this" Keyword
    14:53
  • Constructor Initialization Lists
    08:36
  • Pointers
    17:02
  • Arithmetic
    13:22
  • Pointers and Arrays
    17:22
  • Pointer Arithmetic
    15:37
  • Char Arrays
    09:36
  • Reversing a String
    11:28
  • References
    08:38
  • The "const" Keyword
    13:34
  • Copy Constructors
    13:15
  • The New Operator
    09:11
  • Returning Objects from Functions
    12:53
  • Allocating Memory
    10:29
  • Arrays and Functions
    15:24
  • Namespaces
    19:02
  • Inheritance
    09:27
  • Encapsulation
    10:13
  • Constructor Inheritance
    14:05
  • Twos Complement
    19:25
  • Static Keyword
    18:27
  • Particle Fire Explosion
    05:38
  • Using C++ Libraries
    11:57
  • Aquiring Simple Direct Media Layer
    12:57
  • A Basic SDL Program
    17:05
  • Creating an SDL Window
    22:50
  • Textures, Renderers and Buffers
    30:34
  • Setting Pixel Colors
    11:06
  • Creating the Screen Class
    20:48
  • Bit Shifting and Colors
    08:56
  • Adding a Set Pixel Method
    08:16
  • Animating Colors
    18:19
  • Creating Particles
    29:53
  • Animating Particles
    21:43
  • Creating an Explosion
    14:27
  • Ensuring Constant Speed
    07:50
  • Bitwise "And"
    11:53
  • Implementing Box Blur
    28:54
  • Tweaking Particle Motion
    14:41
  • Languages Overview
    19:05
  • What Next
    08:49
  • Object Oriented Design Considerations
    16:16
  • Postfix and Prefix
    05:15
  • Polymorphism
    12:46
  • Creating Static Libraries
    16:09

Instructor
Software Development Trainer
John Purcell
  • 4.3 Instructor Rating
  • 157,202 Reviews
  • 2,061,328 Students
  • 15 Courses

  After working as a software developer and contractor for over 14 years for a whole bunch of companies including CSC, Proquest, SPSS and AT&T in the UK and Netherlands, I decided to work full-time as a private software trainer. After spending four years in the beautiful city of Budapest, Hungary and a year in Berlin, I now live in my home town of Derby, UK.