内容简介
Chapter 1 Introduction to Computers,the Internet and World Wide Web
1.1 Introduction
1.2 What Is a Computer?
1.3 Computer Organization
1.4 Early Operating Systens
1.5 Personal,Distributed and Client/Server Computing
1.6 The Internet and the World Wide Web
1.7 Machine Languages,Assembly Languages and High-Level Languages
1.8 History of C and C++
1.9 C++Standard Library
1.10 History of Java
1.11 FORTRAN,COBOL,Pascal and Ada
1.12 Basic,Visual Basic,Visual C++,C# and .NET
1.13 Key Software Trend:Object Technology
1.14 Typical C++Development Environment
1.15 Notes About C++and Small C++How to Program,5/e
1.16 Test-Driving a C++Application
1.17 Introduction to Object Technology and the UML
1.18 Wrap-Up
1.19 Web Resources
Chapter 2 Introduction to C++Programming
2.1 Introduction
2.2 First Program in C++:Printing a Line of Text
2.3 Modifying Our First C++Progran
2.4 Another C++Program:Adding Integers
2.5 Memory Concepts
2.6 Arithmetic
2.7 Decision Making:Equality and Relational Operators
2.8 Wrap-Up
Chapter 3 Introduction to Classes and Objects
3.1 Introduction
3.2 Classes,Objects,Member Functions and Data Members
3.3 Overview of the Chapter Examples
3.4 Defining a Class with a Member Function
3.5 Defining a Member Function with a Parameter
3.6 Data Members,set Functions and get Functions
3.7 Initializing Objects with Constructors
3.8 Placing a Class in a Separate File for Reusability
3.9 Separating Interface from Implementation
3.10 Validating Data with set Functions
3.11 Wrap-Up
Chapter 4 Control Statements:Part 1
4.1 Introduction
4.2 Algorithms
4.3 Pseudocode
4.4 Control Structures
4.5 if Selection Statement
4.6 if...else Double-Selection Statement
4.7 while Repetition Statement
4.8 Formulating Algorithms:Counter-Controlled Repetition
4.9 Formulating Algorithms:Sentinel-Controlled Repetition
4.10 Formulating Algorithms:Nested Control Statements
4.11 Assignment Operators
4.12 Increment and Decrement Operators
4.13 Wrap-Up
Chapter 5 Control Statements:Part 2
5.1 Introduction
5.2 Essentials ofCounter-Controlled Repetition
5.3 for Repetition Statement
5.4 Examples Using the for Statement
5.5 do...while Repetition Statement
56 swi tch Multiple-Selection Statement
5.7 break and continue Statements
5.8 Logical Operators
5.9 Confusing Equality(==)and Assignment(=)Operators
5.10 Structured Programming Summary
5.11 Wrap-Up
Chapter 6 Functions and an Introduction to Recursion
6.1 Introduction
6.2 Program Components in C++
6.3 Math Library Functions
6.4 Function Deftnitions with Multiple Parameters
6.5 Function Prototypes and Argument Coercion
6.6 C++Standard Library Header Files
6.7 Case Study:Random Number Generation
6.8 Case Study:Garne ofChance and Introducing enum
6.9 Storage Classes
6.10 Scope Rules
6.11 Function Call Stack andActivation Records
6.12 Functions with Empty Parameter Lists
6.13 Inline Functions
6.14 References and Reference Parameters
6.15 DefaultArguments
6.16 Unary Scope Resolution Operator
6.17 Function Overloading
6.18 Function Templates
6.19 Recursion
6.20 Example Using Recursion:Fibonacci Series
6.21 Recursion vs.Iteration
6.22 Wrap-Up
Chapter 7 Arrays and Vectors
7.1 Introduction
7.2 Arravs
7.3 Declaring Arrays
7.4 Examples Using Arrays
7.5 Passing Arrays to Functions
7.6 Case Study:Class GradeBook Using an Array to Store Grades
7.7 Searching Arrays with Linear Search
7.8 Sorting Arrays with Insertion Sort
7.9 Multidimensional Arrays
7.10 Case Study:Class GradeBook Using a Two-Dimensional Array
7.11 Introduction to C++Standard Library Class Template vector
7.12 Wrap-Up
Chapter 8 Pointers and Pointer-Based Strings
8.1 Introduction
8.2 Pointer Variable Declarations and Initialization
8.3 Pointer Operators
8.4 Passing Arguments to Functions by Reference with Pointers
8.5 Using const with Pointers
8.6 Selection Sort Using Pass-by-Reference
8.7 sizeof Operators
8.8 Pointer Expressions and Pointer Arithmetic
8.9 Relationship Between Pointers and Arrays
8.10 Arrays of Pointers
8.11 Case Study:Card Shuffling and Dealing Simulation
8.12 Function Pointers
8.13 Introduction to Pointer-Based String Processing
8.14 Wrap-Up
Chapter 9 Classes:A Deeper Look,Part 1
9.1 Introduction
9.2 Time Class Case Study
9.3 Class Scope and Accessing Class Members
9.4 Separating Interface from Implementation
9.5 Access Functions and Utility Functions
9.6 Time Class Case Study:Constructors with Default Arguments
9.7 Destructors
9.8 When Constructors and Destructors Are Called
9.9 Time Class Case Study:A Subtle Trap—Returning a Reference to a private Data Member
9.10 Default Memberwise Assignment
9.11 Software Reusability
9.12 Wrap-Up
Chapter 10 Classes:A Deeper Look,Part 2
10.1 Introduction
10.2 const(Constant)Objects and const Member Functions
10.3 Composition:Objects as Members of Classes
10.4 friend Functions and friend Classes
10.5 Using the this Pointer
10.6 Dynamic Memory Management with Operators new and delete
10.7 static Class Members
10.8 Data Abstraction and Information Hiding
10.9 Container Classes and Iterators
10.10 Proxy Classes
10.11 Wrap-Up
Chapter 11 Operator Overloading;String and Array Objects
11.1 Introduction
11.2 Fundamentals of Operator Overloading
11.3 Restrictions on Operator Overloading
11.4 OperatorFunctions as Class Members vs.Global Functions
11.5 Overloading Stream Insertion and Stream Extraction Operators
11.6 Overloading Unary Operators
11.7 Overloading Binary Operators
11.8 Case Study:Array Class
11.9 Converting between Types
11.10 Case Study:String Class
11.11 Overloading++and--
11.12 Case Study:A Date Class
11.13 Standard Library Class string
11.14 explicit Constructors
11.15 Wrap-Up
Chapter 12 Object-Oriented Programming:Inheritance
12.1 Introduction
12.2 Base Classes and Derived Classes
12.3 protected Members
12.4 Relationship between Base Classes and Derived Classes
12.5 Constructors and Destructors in Derived Classes
12.6 public,protected and private Inheritance
12.7 Software Engineering with Inheritance
12.8 Wrap-Up
Chapter 13 Object-Oriented Programming:Polymorphism
13.1 Introduction
13.2 Polymorphism Examples
13.3 Relationships Among Objects in an Inheritance Hierarchy
13.4 Type Fields and switch Statements
13.5 Abstract Classes and Pure virtual Functions
13.6 Case Study:Payroll System Using Polymorphism
13.7 (Optional)Polymorphism,Virtual Functions and Dynamic Binding"Under the Hood"
13.8 Case Study:Payroll System Using Polymorphism and Run-Time Type Information with Downcasting,dynamic_cast,typeid and type_info
13.9 Virtual Destructors
13.10 Wrap-Up
Appendix A Operator Precedence and Associativity Chart
Appendix B ASCII Character Set
Appendix C Fundamental Types
Appendix D Number Systems
Appendix E C++Internet and Web Resources
Appendix F Using the Visual Studio.NET Debugger
Appendix G Using the GNU C++Debugger
Bibliography
Index