You Can Program in C++ By Francis Glassborow

Chapter1:Getting Started:
Creating a 'Hello World' Program
What the Code Means
Our Second Program-An Empty Playpen
What the Code Means

Chapter2:Fundamental Types,Operators,and Simple Variables:
A Simple Program
What Is a Type
What Are Fundamental Types
Representing Negative Integers
Derivative Types
Declaration and Definition
Names in C++
Operators
A simple Program
Exceptions-Handling Bad Input
Writing Correct Code
Getting Output Before Handling an Exception
A Little More About Playpen
Default Playpen Color Names
Characters and Text
Floating-point Numbers
First Floating-point Program

Chapter3:Looping and Making Decisions
Some Library Types
Making Decisions
Looping
On Magic Numbers

Chapter4:Namespaces and the C++ Standard Library:
Wide Versus Narrow Character set Support
Namespaces
Input from std::cin
Output with std::Cout
Standard Console Output Objects
Playpen Plotting Modes

Chapter5:Writing Functions in C++:
The C++ Function Concept
Sorting in Other Orders
Designing a function
C++ Procedures
Pure Functions
Overloading Functions
Resetting istream and ostream Objects

Chapter6:Behavior,Sequence Points,and Order of Evaluation:
Types of Behavior
Sequence Points
Order of Evaluation

Chapter7:Generic Functions:
Which Is Larger
Getting the Largest
Getting the Largest Using a typedef
Getting the Largest Using a Template
Ambiguity
Function Templates Can Be Specialized
Specializing max()
Overloading Function Templates

Chapter8:User-Defined Types,Part1:Typedef and enum
typedef:New Names for Old
On Reading Declarations
Enum
Operator Overloading

Chapter9:User-Defined Types,Part2:Simple Classes:
ISBN as a class Type
Testing Code
Overloading Operators
A value type for playing Cards
public Versus private
Special Member Function:Constructors
Special Member Function:Destructors
Special Member Function:Copy Assignment,Operator=
Ordinary Member functions
Implementing Constructors
Implementing Destructors
Implementing Copy Assignment,Operator=
Implementing a Member Functions

Chapter10:User-Defined Types,Part3:Simple Classes:
A simple playing-card Entity
Another Entity Type:Deck of Cards
Output for deck
Creating a deck Instance From a File

Chapter11:Pointers,Smart Pointers,Iterators and dynamic Instances:
Raw Pointers
A Dangerous Special Case
Arrays
Arrays and Pointers
Dynamic Instances
Smart Pointers
Iterators

Chapter12:User-DefinedTypes,Part4:Class hierarchies,polymorphism,inheritance and Subtypes:
An Interface for a chess piece
Implementing basic_Chesspiece
Implementing a Knight
Getting Polymorphic Behavior
Getting the Identity
Removing an Irritant
Moving to an Occupied Square

Chapter13:Dynamic Object Creation and Polymorphic Objects:
Selecting The Subtype at Runtime
Unnamed Namespaces
A Chess-piece Type
Implementing Chess-piece
Defining and Implementing the Subtypes
Constructing a Specific Chess Piece
The Chesspiece Constructor and Transform()

Chapter14:Streams,Files,and Persistence:
The C++ Stream Hierarchy
Appending Data
Consolidation
String Streams
Converting Numerical Values to Strings

Chapter15:Exceptions:
What Is an Exception?
What Can I throw
The Exception-safe Copy-Assignment Idiom
Rethrowing
Exception Specifications:An Idea That Failed
Exceptions and Destructors

Chapter16:Overloading Operators and Conversion Operators:
Overloading Operators for an Arithmetic Type
Conversion Operators
Function Objects

Chapter17:Containers,Iterators,and Algorithms
Working with a set
Working with Numeric Algorithms
Working witn a Multimap
Preloading a Container

Chapter18:Something Old,Something New:
Code Layout and Consistency
Where to Put const
Function-Style Versus Assignment-Style Initialization
Using using
Switching Off Polymorphism
Alternative Spellings for Operators.Download