Course Description

This course teaches you how to program in the C++ programming language; one of the most powerful and widely-used programming languages available, but also one of the most challenging.

Computer Software Consultant and Contractor

John Purcell

John worked 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. Then he decided to work full-time as a private software trainer.

Course curriculum

  • 1

    Getting Started

    • Introducing C++

    • Setup and Installation

    • Hello World

    • Outputting Text

  • 2

    Basic Syntax

    • Variables

    • Strings

    • User Input

    • Binary Numbers and Memory

    • Integer Types

    • Floating Point Types

    • Other Types

    • "If"

    • If-Else

    • If-Elseif-Else

    • Comparing Floating Point Types

    • C++ Conditions

    • While Loops

    • Do-While Loops

    • "For" Loops

    • Break and Continue

    • Arrays - Lists of Data

    • Multidimensional Arrays

    • Sizeof and Arrays

    • Sizeof Multidimensional Arrays

    • Switch

  • 3

    Subroutines: Reusable Blocks of Code

    • Functions

    • Return Values

    • Function Parameters

    • Headers and Prototypes

  • 4

    Object Oriented Coding

    • Data Members

    • C++ Constructors and Destructors

    • C++ Getters and Setters

    • C++ String Streams

    • Overloading Constructors

    • Constructor Initialization Lists

  • 5

    Pointers and Memory

    • Pointers

    • Arithmetic

    • Pointers and Arrays

    • Pointer Arithmetic

    • Char Arrays

    • Reversing a String

    • References

    • The "const" Keyword

    • Copy Constructors

    • The New Operator

    • Returning Objects from Functions

    • Allocating Memory

    • Arrays and Functions

    • Namespaces

  • 6

    Inheritance

    • Inheritance

    • Encapsulation

    • Constructor Inheritance

  • 7

    Odds and Ends: Twos Complement, and Static Variables

    • Twos Complement

    • Static Keyword

  • 8

    Developing a Program: the Particle Fire Simulation

    • Particle Fire Explosion

    • Using C++ Libraries

    • Acquiring Simple Direct Media Layer

    • A Basic SDL Program

    • Creating an SDL Window

    • Textures, Renderers and Buffers

    • Setting Pixel Colors

    • Creating the Screen Class

    • C++ Bit Shifting and Colors

    • C++ Adding a Set Pixel Method

    • Animating Colors

    • Creating Particles

    • Animating Particles

    • Creating an Explosion

    • Ensuring Constant Speed

    • Implementing Box Blur

    • Tweaking Particle Motion

  • 9

    Conclusion

    • Languages Overview

    • What Next

  • 10

    Bonus

    • Object Oriented Design Considerations

    • Postfix and Prefix

    • Polymorphism

  • 11

    Source Code

    • Creating Static Libraries