Autoplay
Autocomplete
Previous Lesson
Complete and Continue
Learn Advanced C++ Programming
Introduction
Introduction (3:16)
Exceptions
Exceptions Basics (13:56)
Standard Exceptions (13:58)
Custom Exceptions (7:41)
Exception Catching Order (7:23)
Files
Writing Text Files (6:35)
Reading Text Files (7:09)
Parsing Text Files (12:14)
Structs and Padding (7:57)
Reading and Writing Binary Files (13:07)
The Standard Template Library
Vectors (10:57)
Vectors and Memory (13:36)
Two-Dimensional Vectors (7:26)
Lists (12:55)
Maps (13:48)
Custom Objects as Map Values (8:47)
Custom Objects as Map Keys (14:02)
Multimaps (10:53)
Sets (15:22)
Stacks and Queues (16:48)
Sorting Vectors, Deque and Friend (10:25)
STL Complex Data Types (6:34)
Operator Overloading
Overloading the Assignment Operator (16:06)
Printing - Overloading Left Bit Shift (11:23)
A Complex Number Class (17:46)
Overloading Plus (11:54)
Overloading Equality Test (6:50)
Overloading the Dereference Operator (6:06)
Template Classes and Functions
Templates - An Important Note (4:01)
Template Classes (8:27)
Template Functions (4:23)
Template Functions and Type Inference (6:39)
Passing Functions to Functions
Function Pointers (9:57)
Using Function Pointers (8:13)
Object Slicing and Polymorphism (11:58)
Abstract Classes and Pure Virtual Functions (12:19)
Functors (14:21)
C++ 11's Amazing New Features
Decltype, Typeid and Name Mangling (10:40)
The Auto Keyword (8:32)
Range-Based Loops (6:02)
Nested Template Classes (15:12)
A Ring Buffer Class (9:57)
Making Classes Iterable (13:40)
Initialization in C++ 98 (6:41)
Initialization in C++ 11 (11:11)
Initializer Lists (6:27)
Object Initialization, Default and Delete (10:13)
Introducing Lambda Expressions (8:30)
Lambda Parameters and Return Types (9:12)
Lambda Capture Expressions (8:25)
Capturing this With Lambdas (4:50)
The Standard Function Type (12:27)
Mutable Lambdas (1:31)
Delegating Constructors (6:14)
Elision and Optimization.avi (10:08)
Constructors and Memory (8:09)
Rvalues and LValues (7:24)
LValue References (5:33)
Rvalue References (6:26)
Move Constructors (5:09)
Move Assignment Operators (5:55)
Static Casts (10:34)
Dynamic Cast (4:52)
Reinterpret Cast (3:19)
Perfect Forwarding (8:15)
Bind (16:18)
Unique Pointers (12:12)
Shared Pointers (7:43)
About GUI Programming in C++
GUI Programming Overview (11:18)
A Project: Drawing Fractal Images
Source Code
Fractal Creator - Hello World (4:44)
Bitmap File Headers (10:53)
Bitmap Info Headers (5:25)
A Bitmap Class (8:50)
Bitmap Memory (4:28)
Bitmap Header Values (7:00)
Writing a Bitmap (11:10)
Setting Bitmap Pixels (11:11)
Scaling (9:50)
A Mandelbrot Class (5:37)
The Fractal Algorithm (16:47)
Improving the Image (6:13)
The Colour Histogram (7:06)
Validating the Histogram (6:24)
Eliminating Max Iterations (3:19)
Storing the Iterations (2:53)
Using the Histogram (9:19)
Colour Transforms (4:06)
A Zoom Class (5:32)
The Zoom List Class (7:47)
Centering and Scaling (11:03)
Applying the Zoom (5:42)
Zooming In (4:29)
Reorganising Main (6:14)
Implementing FractalCreator (14:15)
An RGB Class (10:15)
Using the RGB Class (6:27)
Specifying Color Ranges (8:03)
Calculating Range Totals (11:36)
Checking the Range Totals (2:47)
Getting the Range for a Pixel (8:52)
Range-Based Coloring (7:56)
More Exercises (6:16)
Bonus Videos
Multiple Inheritance (6:15)
The Zoom List Class
Lesson content locked
If you're already enrolled,
you'll need to login
.
Enroll in Course to Unlock