C++11 from Scratch

C++11 from Scratch

English | MP4 | AVC 1280×720 | AAC 44KHz 2ch | 5h 48m | 814 MB

This course will take you from zero to being productive with modern C++, without requiring any previous specific programming knowledge.

This course is designed to give you everything you need to be productive with modern standard C++. Not every aspect of the C++ language is considered (that would be impossible in a few hour course); instead, the course is focused on some important practical-oriented features of the language. The language features discussed in this course will be shown in action with concrete C++ code samples. This course is a mix of slides and C++ demos. Even basic concepts will be explained, using interesting visuals and metaphors. In this course, C++11 from Scratch, you will begin your C++ journey learning how to compile your C++ code. First, you will start from a simple Hello World program. Next, you will learn how to represent data in your C++ programs with types and variables. Then, you will discover how to write code to make decisions and iterating. Finally, you will explore the basics of the STL vector container, and you will learn how to define your own classes. After following this course, you will be able to learn further C++ elements including minor C++14 additions, building on the solid modern C++ knowledge of this course.

Table of Contents

1 Course Overview

Introducing C++
2 Introduction
3 Why C++

Building C++ Programs
4 Introduction
5 The C++ Compiler – A Translator
6 My First C++ Program – Hello World
7 Compiling from the Command Line
8 Errors and Warnings
9 Recap of Common Compiler Options
10 Dipping Your Toe in the Water of an IDE
11 A Brief Note on Coding Style
12 Going Deeper – The Preprocessor and the Linker
13 Summary

Representing Information with Types and Variables
14 Introduction
15 What Is a Variable
16 Representing Integer Numbers with the Integer Type
17 Basic Operations
18 Declaring and Initializing Variables
19 Demo – Integer Calculator
20 Approximating Real Numbers with Double
21 Demo – Temperature Conversions
22 Demo – The Roundoff Error
23 Representing Text with the Standard std – -string Class
24 Demo – Say Hi
25 Demo – Flowerbox
26 Representing Constant Values
27 Summary

Making Decisions and Iterating
28 Introduction
29 Making Decisions Using the if Statement
30 A Matter of Coding Style
31 Demo – Warming up with Multiplication Problems
32 Generating Random Numbers
33 Demo – Multiplications with Random Numbers
34 Executing Code Repeatedly with for Loops
35 Demo – Asking Multiple Multiplication Problems
36 Iterating Using while
37 Demo – Continue to Prompt Multiplication Problems Using while
38 Iterating Using the Range-based for Loop
39 A Few Common Beginner s Errors
40 Summary

Reusing Code with Functions
41 Introduction
42 Why Functions
43 Demo – Reusing the Temperature Conversion Code with a Function
44 Local Variables and Scope
45 The Swap Algorithm
46 Demo – Modifying Function Parameters Swap in Action
47 Passing Parameters by Value vs. by Reference
48 Observing Parameters with const References
49 Demo – Observing Parameters The Underline Function
50 Basic Rules for Parameter Passing in C++
51 Function Overloading
52 Introducing the New C++11 Trailing Return Type Syntax
53 Summary

Storing Sequences of Items with the STL vector
54 Introduction
55 Meet std – -vector – The Best Default Standard Container
56 Basic Vector Operations
57 Iterating Through Vector s Elements
58 Demo – std – -vector in Action
59 Iterators and Sorting
60 Demo – Reading and Sorting Lines from Files
61 Fixing a Couple of Subtle Bugs
62 Summary

Defining Custom Types
63 Introduction
64 Building Layers of Abstractions with Custom Types
65 Designing a Simple First Class – Rectangle
66 Implementing Rectangle in C++ – Data Members and Access Control
67 Initializing Objects with Constructors
68 Implementing Class Operations with Member Functions
69 Demo – The C++ Rectangle Class in Action
70 Demo – Three Common Mistakes with Classes
71 Automatic Resource Cleanup with Destructors
72 Demo – Destructors in Action
73 Summary

Organizing Code in Multiple Files
74 Introduction
75 Header-only Code Reuse
76 Preventing Multiple Header Inclusions with Include Guards
77 Splitting Class Code in Header and Source Files
78 Introducing the CMake Build System
79 Summary and Thank You