Learning C++: What Lies Before You
The Origins of C++: A Little History
The Mechanics of Creating a Program
Pointers, Arrays, and Pointer Arithmetic
5 Loops and Relational Expressions
The Range-Based for
Loop (C++11)
Nested Loops and Two-Dimensional Arrays
6 Branching Statements and Logical Operators
The cctype
Library of Character Functions
The break
and continue
Statements
7 Functions: C++’s Programming Modules
Function Arguments and Passing by Value
Functions and Two-Dimensional Arrays
Functions and string
Class Objects
9 Memory Models and Namespaces
Storage Duration, Scope, and Linkage
Procedural and Object-Oriented Programming
Class Constructors and Destructors
Knowing Your Objects: The this
Pointer
Time on Our Hands: Developing an Operator Overloading Example
Overloaded Operators: Member Versus Nonmember Functions
More Overloading: A Vector Class
Automatic Conversions and Type Casts for Classes
12 Classes and Dynamic Memory Allocation
The New, Improved String
Class
Things to Remember When Using new
in Constructors
Observations About Returning Objects
Beginning with a Simple Base Class
Inheritance: An Is-a Relationship
Polymorphic Public Inheritance
Inheritance and Dynamic Memory Allocation
15 Friends, Exceptions, and More
16 The string
Class and the Standard Template Library
Smart Pointer Template Classes
Function Objects (a.k.a. Functors)
An Overview of C++ Input and Output
18 Visiting with the New C++ Standard
Move Semantics and the Rvalue Reference
G The Standard Template Library Methods and Functions
H Selected Readings and Internet Resources
3.146.37.250