C++ Primer, Fourth Edition By Stanley B. Lippman, Josée Lajoie, Barbara
E. Moo
Publisher: Addison Wesley Professional
Pub Date: February 14, 2005
Print ISBN: 0-201-72148-1
Pages: 912
Copyright
Preface
Changes to the Fourth Edition
Structure of This Book
Acknowledgments
Chapter 1. Getting
Started
Section 1.1. Writing
a Simple C++ Program
Section 1.2. A First
Look at Input/Output
Section 1.3. A Word
About Comments
Section 1.4. Control
Structures
Section 1.5.
Introducing Classes
Section 1.6. The C++ Program
Chapter Summary
Keyterm Defined Terms
Part I: The Basics
Chapter 2. Variables
and Basic Types
Section 2.1.
Primitive Built-in Types
Section 2.2. Literal
Constants
Section 2.3.
Variables
Section 2.4. const
Qualifier
Section 2.5.
References
Section 2.6. Typedef
Names
Section 2.7.
Enumerations
Section 2.8. Class
Types
Section 2.9. Writing
Our Own Header Files
Chapter Summary
Keyterm Defined Terms
Chapter 3. Library
Types
Section 3.1.
Namespace using Declarations
Section 3.2. Library string
Type
Section 3.3. Library
vector Type
Section 3.4.
Introducing Iterators
Section 3.5. Library
bitset Type
Chapter Summary
Keyterm Defined Terms
Chapter 4. Arrays and
Pointers
Section 4.1. Arrays
Section 4.2.
Introducing Pointers
Section 4.3. C-Style
Character Strings
Section 4.4.
Multidimensioned Arrays
Chapter Summary
Keyterm Defined Terms
Chapter 5.
Expressions
Section 5.1.
Arithmetic Operators
Section 5.2.
Relational and Logical Operators
Section 5.3. The
Bitwise Operators
Section 5.4.
Assignment Operators
Section 5.5.
Increment and Decrement Operators
Section 5.6. The
Arrow Operator
Section 5.7. The
Conditional Operator
Section 5.8. The
sizeof Operator
Section 5.9. Comma
Operator
Section 5.10.
Evaluating Compound Expressions
Section 5.11. The new
and delete Expressions
Section 5.12. Type
Conversions
Chapter Summary
Keyterm Defined Terms
Chapter 6. Statements
Section 6.1. Simple
Statements
Section 6.2.
Declaration Statements
Section 6.3. Compound
Statements (Blocks)
Section 6.4.
Statement Scope
Section 6.5. The if
Statement
Section 6.6. The
switch Statement
Section 6.7. The
while Statement
Section 6.8. The for
Loop Statement
Section 6.9. The do
while Statement
Section 6.10. The
break Statement
Section 6.11. The continue
Statement
Section 6.12. The
goto Statement
Section 6.13. try
Blocks and Exception Handling
Section 6.14. Using
the Preprocessor for Debugging
Chapter Summary
Keyterm Defined Terms
Chapter 7. Functions
Section 7.1. Defining
a Function
Section 7.2. Argument
Passing
Section 7.3. The
return Statement
Section 7.4. Function
Declarations
Section 7.5. Local
Objects
Section 7.6. Inline
Functions
Section 7.7. Class
Member Functions
Section 7.8.
Overloaded Functions
Section 7.9. Pointers
to Functions
Chapter Summary
Keyterm Defined Terms
Chapter 8. The IO
Library
Section 8.1. An
Object-Oriented Library
Section 8.2.
Condition States
Section 8.3. Managing
the Output Buffer
Section 8.4. File
Input and Output
Section 8.5. String
Streams
Chapter Summary
Keyterm Defined Terms
Part II: Containers
and Algorithms
Chapter 9. Sequential
Containers
Section 9.1. Defining
a Sequential Container
Section 9.2.
Iterators and Iterator Ranges
Section 9.3. Sequence
Container Operations
Section 9.4. How a
vector Grows
Section 9.5. Deciding
Which Container to Use
Section 9.6. strings
Revisited
Section 9.7.
Container Adaptors
Chapter Summary
Keyterm Defined Terms
Chapter 10.
Associative Containers
Section 10.1.
Preliminaries: the pair Type
Section 10.2.
Associative Containers
Section 10.3. The map
Type
Section 10.4. The set
Type
Section 10.5. The
multimap and multiset Types
Section 10.6. Using
Containers: Text-Query Program
Chapter Summary
Keyterm Defined Terms
Chapter 11. Generic
Algorithms
Section 11.1.
Overview
Section 11.2. A First
Look at the Algorithms
Section 11.3.
Revisiting Iterators
Section 11.4.
Structure of Generic Algorithms
Section 11.5.
Container-Specific Algorithms
Chapter Summary
Keyterm Defined Terms
Part III: Classes and
Data Abstraction
Chapter 12. Classes
Section 12.1. Class
Definitions and Declarations
Section 12.2. The
Implicit this Pointer
Section 12.3. Class
Scope
Section 12.4.
Constructors
Section 12.5. Friends
Section 12.6. static
Class Members
Chapter Summary
Keyterm Defined Terms
Chapter 13. Copy
Control
Section 13.1. The
Copy Constructor
Section 13.2. The
Assignment Operator
Section 13.3. The
Destructor
Section 13.4. A
Message-Handling Example
Section 13.5.
Managing Pointer Members
Chapter Summary
Keyterm Defined Terms
Chapter 14.
Overloaded Operations and Conversions
Section 14.1.
Defining an Overloaded Operator
Section 14.2. Input
and Output Operators
Section 14.3.
Arithmetic and Relational Operators
Section 14.4.
Assignment Operators
Section 14.5.
Subscript Operator
Section 14.6. Member
Access Operators
Section 14.7.
Increment and Decrement Operators
Section 14.8. Call
Operator and Function Objects
Section 14.9.
Conversions and Class Types
Chapter Summary
Keyterm Defined Terms
Part IV:
Object-Oriented and Generic Programming
Chapter 15.
Object-Oriented Programming
Section 15.1. OOP: An
Overview
Section 15.2.
Defining Base and Derived Classes
Section 15.3.
Conversions and Inheritance
Section 15.4.
Constructors and Copy Control
Section 15.5. Class
Scope under Inheritance
Section 15.6. Pure
Virtual Functions
Section 15.7.
Containers and Inheritance
Section 15.8. Handle
Classes and Inheritance
Section 15.9. Text
Queries Revisited
Chapter Summary
Keyterm Defined Terms
Chapter 16. Templates
and Generic Programming
Section 16.1.
Template Definitions
Section 16.2.
Instantiation
Section 16.3.
Template Compilation Models
Section 16.4. Class
Template Members
Section 16.5. A
Generic Handle Class
Section 16.6.
Template Specializations
Section 16.7.
Overloading and Function Templates
Chapter Summary
Keyterm Defined Terms
Part V: Advanced
Topics
Chapter 17. Tools for
Large Programs
Section 17.1.
Exception Handling
Section 17.2.
Namespaces
Section 17.3.
Multiple and Virtual Inheritance
Chapter Summary
Keyterm Defined Terms
Chapter 18.
Specialized Tools and Techniques
Section 18.1.
Optimizing Memory Allocation
Section 18.2.
Run-Time Type Identification
Section 18.3. Pointer
to Class Member
Section 18.4. Nested
Classes
Section 18.5. Union:
A Space-Saving Class
Section 18.6. Local
Classes
Section 18.7.
Inherently Nonportable Features
Chapter Summary
Keyterm Defined Terms
Appendix A. The
Library
Section A.1. Library
Names and Headers
Section A.2. A Brief
Tour of the Algorithms
Section A.3. The IO
Library Revisited