C++ Tutorial for Complete Beginners

How to program in the popular (and tricky!) C++ programming language, for complete beginners

Bestseller
Created By: John Purcell
FREE

About This Course

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.

License Type: CC-BY

Other Information

  • Certificate will provided in this course on Completion
  • Full lifetime access
  • Available on Mobile & Laptop

What Students Will Learn In Your Course?

  • 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

Are There Any Course Requirements Or Prerequisites?

  • 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

Who Are Your Target Students?

  • 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

  • 78 lectures
  • 17:48:59
  • 1 - Introduction
    Preview 00:14:55
  • 2 - Installation
    00:08:38
  • 3 - Hello World
    00:23:15
  • 4 - Outputting Text
    00:19:17
  • 5 - Variables
    00:16:23
  • 6 - Strings
    00:07:29
  • 7 - User Input
    00:09:35
  • 8 - Binary Numbers and Memory
    00:05:57
  • 9 - Integer Variable Types
    00:13:02
  • 10 - Floating Point Variable Types
    00:14:41
  • 11 - Char and Bool
    00:11:34
  • 12 - The If Statement
    00:12:26
  • 13 - If-Else
    00:13:15
  • 14 - Choosing Between Alternatives If-Else
    00:12:43
  • 15 - Complex Conditions
    00:21:17
  • 16 - While Loops
    00:09:35
  • 17 - The Do-While Loops
    00:13:48
  • 18 - For Loops
    00:06:43
  • 19 - Break and Continue
    00:10:50
  • 20 - Arrays
    00:17:24
  • 21 - Multidimensional Arrays
    00:11:43
  • 22 - Sizeof and Arrays
    00:07:03
  • 23 - Sizeof Multidimensional Arrays
    00:06:58
  • 24 - Switch Choosing Between Alternatives
    00:09:45
  • 25 - Functions Using Subroutines in C++
    00:10:06
  • 26 - Return Values Getting Data From Subroutines
    00:06:31
  • 27 - Function Parameters Passing Data to Subroutines
    00:07:05
  • 28 - Headers and Prototypes
    00:13:54
  • 29 - Classes The Foundation of Object-Oriented (OO) Programming
    00:18:15
  • 30 - Data Members, a.k.a. Instance Variables
    00:17:51
  • 31 - Constructors and Destructors
    00:16:35
  • 32 - Getters and Setters
    00:13:15
  • 33 - String Streams; Adding Number to Strings
    00:08:44
  • 34 - Overloading Constructors
    00:13:07
  • 35 - The this Keyword; A First Taste of Pointers
    00:14:53
  • 36 - Constructor Initialization Lists
    00:08:36
  • 37 - Pointers; Where C++ Starts to Get Tricky
    00:17:02
  • 38 - Arithmetic Operators
    00:13:22
  • 39 - Pointers and Arrays
    00:17:22
  • 40 - Pointer Arithmetic; Adding, Subtracting and Comparing
    00:15:37
  • 41 - Char Arrays Primitive Strings in C++
    00:09:36
  • 42 - Reversing a String (Interview Question!)
    00:11:28
  • 43 - References; Nicer than Pointers!
    00:08:38
  • 44 - Const; a Vital Tool for Reducing Bugs
    00:13:34
  • 45 - Copy Constructors; Creating Copies of Objects
    00:13:15
  • 46 - The New Operator; Allocating Memory in C++
    00:09:11
  • 47 - Returning Objects from Functions
    00:12:53
  • 48 - Allocating Memory
    00:10:29
  • 49 - Arrays and Functions
    00:15:24
  • 50 - Namespaces; Organise Your Classes
    00:19:02
  • 51 - Inheritance
    00:09:27
  • 52 - Encapsulation
    00:10:13
  • 53 - Constructor Inheritance
    00:14:05
  • 54 - Twos Complement
    00:19:25
  • 55 - Static Variables
    00:18:27
  • 56 - Particle Fire Explosion
    00:05:38
  • 57 - Using C++ Libraries
    00:11:57
  • 58 - Aquiring Simple Direct Media Layer
    00:12:57
  • 59 - A Basic SDL Program
    00:17:05
  • 60 - Creating an SDL Window
    00:22:50
  • 61 - Textures, Renderers and Buffers
    00:30:34
  • 62 - Setting Pixel Colors
    00:11:06
  • 63 - Creating the Screen Class
    00:20:48
  • 64 - Bit Shifting and Colors
    00:08:56
  • 65 - Adding a Set Pixel Method
    00:08:16
  • 66 - Animating Colors
    00:18:19
  • 67 - Creating Particles (Starfields!)
    00:29:53
  • 68 - Animating Particles
    00:21:43
  • 69 - Creating an Explosion
    00:14:27
  • Ensuring Constant Speed
    00:07:50
  • Biwise
    00:11:53
  • Implementing Box Blur
    00:28:54
  • Realistic Particle Motion
    00:14:41
  • Languages Overview
    00:19:05
  • What Next
    00:08:49
  • Object Oriented Design Considerations
    00:16:16
  • Understanding Postfix and Prefix
    00:05:15
  • Static Creating Libraries
    00:16:09
Image

John Purcell

  • 4.28 (12550)
  • 1603 Reviews
  • 12550 Students
  • 6 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.