Skip to content
Home
Programs
Close Programs
Open Programs
Cybersecurity
Courses
Community
News
Knowledgebase
GIS
Courses
Community
News
Knowledgebase
Agile Methodologies
Courses
Community
News
Knowledgebase
Catalog
About
Contact Us
Login
Sign Up
$
0.00
0
Cart
Login
Sign Up
$
0.00
0
Cart
Login
Sign Up
$
0.00
0
Cart
Home
All Programs
Computers
Languages
C++ Programming
C++ Programming
Curriculum
43 Sections
170 Lessons
10 Weeks
Expand all sections
Collapse all sections
Introduction
5
1.1
About This Book
1.2
Foolish Assumptions
1.3
Icons Used in This Book
1.4
Beyond the Book
1.5
Where to Go from Here
Book 1: Getting Started with C++
0
Chapter 1: Configuring Your Desktop System
5
3.1
Obtaining a Copy of C++ 20
3.2
Obtaining Code::Blocks
3.3
Installing Code::Blocks
3.4
Touring the Essential Code::Blocks Features
3.5
Using Other IDEs
Chapter 2: Configuring Your Mobile System
4
4.1
Obtaining CppDroid
4.2
Considering Other Alternatives
4.3
Touring the Essential CppDroid Features
4.4
Obtaining CppDroid Help
Chapter 3: Creating Your First C++ Application
5
5.1
Code::Blocks Creating a Project
5.2
Typing the Code
5.3
Starting with Main
5.4
Showing Information
5.5
Let Your Application Run Away
Chapter 4: Storing Data in C++
7
6.1
Putting Your Data Places: Variables
6.2
Manipulating Integer Variables
6.3
Characters
6.4
Strings
6.5
Making Decisions Using Conditional Operators
6.6
Telling the Truth with Boolean Variables
6.7
Reading from the Console
Chapter 5: Directing the Application Flow
9
7.1
Doing This or Doing That
7.2
Evaluating Conditions in C++
7.3
Including Evaluations in C++ Conditional Statements
7.4
Repeating Actions with Statements That Loop
7.5
Looping for
7.6
Looping while
7.7
Doing while
7.8
Breaking and continuing
7.9
Nesting loops
Chapter 6: Dividing Your Work with Functions
6
8.1
Dividing Your Work
8.2
Calling a Function
8.3
Writing Your Own Functions
8.4
Improving On the Basic Function
8.5
Calling All String Functions
8.6
Understanding main()
Chapter 7: Splitting Up Source Code Files
4
9.1
Creating Multiple Source Files
9.2
Sharing with Header Files
9.3
Sharing Variables among Source Files
9.4
Using the Mysterious Header Wrappers
Chapter 8: Referring to Your Data Through Pointers
7
10.1
Understanding the Changes in Pointers for C++ 20
10.2
Heaping and Stacking the Variables
10.3
Creating New Raw Pointers
10.4
Freeing Raw Pointers
10.5
Working with Smart Pointers
10.6
Passing Pointer Variables to Functions
10.7
Returning Pointer Variables from Functions
Book 2: Understanding Objects and Classes
0
Chapter 1: Working with Classes
5
12.1
Understanding Objects and Classes
12.2
Working with a Class
12.3
Starting and Ending with Constructors and Destructors
12.4
Building Hierarchies of Classes
12.5
Creating and Using Object Aliases
Chapter 2: Using Advanced C++ Features
9
13.1
Filling Your Code with Comments
13.2
Converting Types
13.3
Reading from the Console
13.4
Understanding Preprocessor Directives
13.5
Using Constants
13.6
Using Switch Statements
13.7
Supercharging enums with Classes
13.8
Working with Random Numbers
13.9
Storing Data in Arrays
Chapter 3: Planning and Building Objects
3
14.1
Recognizing Objects
14.2
Encapsulating Objects
14.3
Building Hierarchies
Chapter 4: Building with Design Patterns
4
15.1
Delving Into Pattern History
15.2
Introducing a Simple Pattern: the Singleton
15.3
Watching an Instance with an Observer
15.4
Mediating with a Pattern
Book 3: Understanding Functional Programming
0
Chapter 1: Considering Functional Programming
8
17.1
Understanding How Functional Programming Differs
17.2
Defining an Impure Language
17.3
Seeing Data as Immutable
17.4
Considering the Effects of State
17.5
Eliminating Side Effects
17.6
Understanding the Role of auto
17.7
Passing Functions to Functions
17.8
Using Lambda Expressions for Implementation
Chapter 2: Working with Lambda Expressions
3
18.1
Creating More Readable and Concise C++ Code
18.2
Defining the Essential Lambda Expression
18.3
Developing with Lambda Expressions
Chapter 3: Advanced Lambda Expressions
4
19.1
Considering the C++ 20 Lambda Extensions
19.2
Working in Unevaluated Contexts
19.3
Using Assignable Stateless Lambda Expressions
19.4
Dealing with Pack Expansions
Book 4: Fixing Problems
0
Chapter 1: Dealing with Bugs
4
21.1
It’s Not a Bug. It’s a Feature!
21.2
Make Your Application Features Look Like Features
21.3
Anticipating (Almost) Everything
21.4
Avoiding Mistakes, Plain and Simple
Chapter 2: Debugging an Application
3
22.1
Programming with Debuggers
22.2
Debugging with Different Tools
22.3
Debugging a Code::Blocks Application with Command-Line Arguments
Chapter 3: Stopping and Inspecting Your Code
2
23.1
Setting and Disabling Breakpoints
23.2
Watching, Inspecting, and Changing Variables
Chapter 4: Traveling About the Stack
2
24.1
Stacking Your Data
24.2
Debugging with Advanced Features
Book 5: Advanced Programming
0
Chapter 1: Working with Arrays, Pointers, and References
3
26.1
Building Up Arrays
26.2
Pointing with Pointers
26.3
Referring to References
Chapter 2: Creating Data Structures
3
27.1
Working with Data
27.2
Structuring Your Data
27.3
Naming Your Space
Chapter 3: Constructors, Destructors, and Exceptions
2
28.1
Constructing and Destructing Objects
28.2
Programming the Exceptions to the Rule
Chapter 4: Advanced Class Usage
2
29.1
Inherently Inheriting Correctly
29.2
Using Classes and Types within Classes
Chapter 5: Creating Classes with Templates
6
30.1
Templatizing a Class
30.2
Going Beyond the Basics
30.3
Parameterizing a Template
30.4
Typedefing a Template
30.5
Deriving Templates
30.6
Templatizing a Function
Chapter 6: Programming with the Standard Library
7
31.1
Architecting the Standard Library
31.2
Containing Your Classes
31.3
The Great Container Showdown
31.4
Copying Containers
31.5
Creating and Using Dynamic Arrays
31.6
Working with Unordered Data
31.7
Working with Ranges
Book 6: Reading and Writing Files
0
Chapter 1: Filing Information with the Streams Library
4
33.1
Seeing a Need for Streams
33.2
Programming with the Streams Library
33.3
Handling Errors When Opening a File
33.4
Flagging the ios Flags
Chapter 2: Writing with Output Streams
2
34.1
Inserting with the << Operator
34.2
Formatting Your Output
Chapter 3: Reading with Input Streams
3
35.1
Extracting with Operators
35.2
Encountering the End of File
35.3
Reading Various Types
Chapter 4: Building Directories and Contents
4
36.1
Manipulating Directories
36.2
Getting the Contents of a Directory
36.3
Copying Files
36.4
Moving and Renaming Files and Directories
Chapter 5: Streaming Your Own Classes
2
37.1
Streaming a Class for Text Formatting
37.2
Manipulating a Stream
Book 7: Advanced Standard Library Usage
0
Chapter 1: Exploring the Standard Library Further
6
39.1
Considering the Standard Library Categories
39.2
Parsing Strings Using a Hash
39.3
Obtaining Information Using a Random Access Iterator
39.4
Locating Values Using the Find Algorithm
39.5
Using the Random Number Generator
39.6
Working with Temporary Buffers
Chapter 2: Working with User-Defined Literals (UDLs)
3
40.1
Understanding the Need for UDLs
40.2
Working with the UDLs in the Standard Library
40.3
Creating Your Own UDLs
Chapter 3: Building Original Templates
8
41.1
Deciding When to Create a Template
41.2
Defining the Elements of a Good Template
41.3
Creating a Basic Math Template
41.4
Building a Structure Template
41.5
Developing a Class Template
41.6
Considering Template Specialization
41.7
Creating a Template Library
41.8
Using Your Template Library
Chapter 4: Investigating Boost
11
42.1
Considering the Standard Library Alternative
42.2
Understanding Boost
42.3
Obtaining and Installing Boost for Code::Blocks
42.4
Creating the Boost Tools
42.5
Using Boost.Build
42.6
Using Inspect
42.7
Understanding BoostBook
42.8
Using QuickBook
42.9
Using bcp
42.10
Using Wave
42.11
Building Your First Boost Application Using Date Time
Chapter 5: Boosting up a Step
5
43.1
Parsing Strings Using RegEx
43.2
Breaking Strings into Tokens Using Tokenizer
43.3
Performing Numeric Conversion
43.4
Creating Improved Loops Using Foreach
43.5
Accessing the Operating System Using Filesystem
This content is protected, please
login
and
enroll
in the course to view this content!
Login
or
Sign Up
Home
Programs
Close Programs
Open Programs
Cybersecurity
Courses
Community
News
Knowledgebase
GIS
Courses
Community
News
Knowledgebase
Agile Methodologies
Courses
Community
News
Knowledgebase
Cybersecurity
Courses
Community
News
Knowledgebase
Catalog
About
Contact Us
Linkedin
Instagram
Modal title
Main Content