Learn Advanced C++ Programming
Last updated 6/2022
MP4 | Video: h264, 1920x1080 | Audio: AAC, 44.1 KHz
Language: English | Size: 6.23 GB | Duration: 15h 11m
Last updated 6/2022
MP4 | Video: h264, 1920x1080 | Audio: AAC, 44.1 KHz
Language: English | Size: 6.23 GB | Duration: 15h 11m
Discover intermediate to advanced C++, including C++ 11's fantastic additions to the C++ standard.
What you'll learn
Develop complex C++ applications
Understand C++ 11
Be in a position to apply for jobs requiring good C++ knowledge
Requirements
You will need a grasp of basic C++, together with a C++ compiler.
Description
This course will take you from a basic knowledge of C++ to using more advanced features of the language. This course is for you if you want to deepen your basic knowledge of C++, you want to learn C++ 11 features, or you've taken my free beginners' C++ course and you're looking for the next step.We'll start with a look at C++ file handling and move through STL, template classes, operator overloading, lambda expressions, move constructors and much more besides.At the end of the course I'll show you how to create a program that generates fractal images, using a a few of the language features we've seen in the course and giving you a great work out with smart pointers and arrays.I'll give you exercises throughout the course, ranging from easy near the start, to quite tricky (but optional!) near the end of the course.
Overview
Section 1: Introduction
Lecture 1 Introduction
Lecture 2 Source Code
Section 2: Exceptions
Lecture 3 Exceptions Basics
Lecture 4 Standard Exceptions
Lecture 5 Custom Exceptions
Lecture 6 Exception Catching Order
Section 3: Files
Lecture 7 Writing Text Files
Lecture 8 Reading Text Files
Lecture 9 Parsing Text Files
Lecture 10 Structs and Padding
Lecture 11 Reading and Writing Binary Files
Section 4: The Standard Template Library
Lecture 12 Vectors
Lecture 13 Vectors and Memory
Lecture 14 Two-Dimensional Vectors
Lecture 15 Lists
Lecture 16 Maps
Lecture 17 Custom Objects as Map Values
Lecture 18 Custom Objects as Map Keys
Lecture 19 Multimaps
Lecture 20 Sets
Lecture 21 Stacks and Queues
Lecture 22 Sorting Vectors, Deque and Friend
Lecture 23 STL Complex Data Types
Section 5: Operator Overloading
Lecture 24 Overloading the Assignment Operator
Lecture 25 Printing - Overloading Left Bit Shift
Lecture 26 A Complex Number Class
Lecture 27 Overloading Plus
Lecture 28 Overloading Equality Test
Lecture 29 Overloading the Dereference Operator
Section 6: Template Classes and Functions
Lecture 30 Templates - An Important Note
Lecture 31 Template Classes
Lecture 32 Template Functions
Lecture 33 Template Functions and Type Inference
Section 7: Passing Functions to Functions
Lecture 34 Function Pointers
Lecture 35 Using Function Pointers
Lecture 36 Object Slicing and Polymorphism
Lecture 37 Abstract Classes and Pure Virtual Functions
Lecture 38 Functors
Section 8: C++ 11's Amazing New Features
Lecture 39 Decltype, Typeid and Name Mangling
Lecture 40 The Auto Keyword
Lecture 41 Range-Based Loops
Lecture 42 Nested Template Classes
Lecture 43 A Ring Buffer Class
Lecture 44 Making Classes Iterable
Lecture 45 Initialization in C++ 98
Lecture 46 Initialization in C++ 11
Lecture 47 Initializer Lists
Lecture 48 Object Initialization, Default and Delete
Lecture 49 Introducing Lambda Expressions
Lecture 50 Lambda Parameters and Return Types
Lecture 51 Lambda Capture Expressions
Lecture 52 Capturing this With Lambdas
Lecture 53 The Standard Function Type
Lecture 54 Mutable Lambdas
Lecture 55 Delegating Constructors
Lecture 56 Elision and Optimization.avi
Lecture 57 Constructors and Memory
Lecture 58 Rvalues and LValues
Lecture 59 LValue References
Lecture 60 Rvalue References
Lecture 61 Move Constructors
Lecture 62 Move Assignment Operators
Lecture 63 Static Casts
Lecture 64 Dynamic Cast
Lecture 65 Reinterpret Cast
Lecture 66 Perfect Forwarding
Lecture 67 Bind
Lecture 68 Unique Pointers
Lecture 69 Shared Pointers
Section 9: About GUI Programming in C++
Lecture 70 GUI Programming Overview
Section 10: A Project: Drawing Fractal Images
Lecture 71 Source Code
Lecture 72 Fractal Creator - Hello World
Lecture 73 Bitmap File Headers
Lecture 74 Bitmap Info Headers
Lecture 75 A Bitmap Class
Lecture 76 Bitmap Memory
Lecture 77 Bitmap Header Values
Lecture 78 Writing a Bitmap
Lecture 79 Setting Bitmap Pixels
Lecture 80 Scaling
Lecture 81 A Mandelbrot Class
Lecture 82 The Fractal Algorithm
Lecture 83 Improving the Image
Lecture 84 The Colour Histogram
Lecture 85 Validating the Histogram
Lecture 86 Eliminating Max Iterations
Lecture 87 Storing the Iterations
Lecture 88 Using the Histogram
Lecture 89 Colour Transforms
Lecture 90 A Zoom Class
Lecture 91 The Zoom List Class
Lecture 92 Centering and Scaling
Lecture 93 Applying the Zoom
Lecture 94 Zooming In
Lecture 95 Reorganising Main
Lecture 96 Implementing FractalCreator
Lecture 97 An RGB Class
Lecture 98 Using the RGB Class
Lecture 99 Specifying Color Ranges
Lecture 100 Calculating Range Totals
Lecture 101 Checking the Range Totals
Lecture 102 Getting the Pixel Range
Lecture 103 Range-Based Coloring
Lecture 104 More Exercises
Section 11: Bonus Videos
Lecture 105 Multiple Inheritance
This course is for anyone with a basic knowledge of C++ who wants to increase their knowledege,Suitable for anyone who knows C++ 98 and wants to learn C++ 11 features