為使讀者快速建立面向?qū)ο蟮母拍、循序漸進地理解OOP技術(shù)的各知識點內(nèi)容、系統(tǒng)地建立OOP完整的知識架構(gòu)及利用OOP方法完整地解決一個實際應(yīng)用問題,《普通高等院!笆濉币(guī)劃教材:C++面向?qū)ο蟪绦蛟O(shè)計雙語教程》以O(shè)OP知識節(jié)點遞進式組成各章節(jié)內(nèi)容,并以實際應(yīng)用問題作為樣例貫穿于全書!镀胀ǜ叩仍盒!笆濉币(guī)劃教材:C++面向?qū)ο蟪绦蛟O(shè)計雙語教程》內(nèi)容是作者根據(jù)十余年擔任OOP課程教學、OOP課程設(shè)計體會及多年指導學生畢業(yè)設(shè)計、課程設(shè)計和計算機程序競賽所積累的經(jīng)驗而精心組織的,各章節(jié)內(nèi)容結(jié)構(gòu)清晰,便于學習和掌握。
Chapter 1 Introduction
1.1 Overview of Programming
1.1.1 What Is Programming?
1.1.2 How Do We Write a Program?
1.2 The Evolution of Programming Language
1.2.1 Assembly and Machine Languages
1.2.2 Early Languages
1.2.3 Later-Generation Languages
1.2.4 Modem Languages
1.3 Programming Methodologies
1.3.1 Structured Programming
1.3.2 Object-Oriented Programming
1.4 Object-Oriented Programming
1.5 C + + Programming Language
1.5.1 History of CandC++
1.5.2 Learning C + +
Word Tips
Exercises
Chapter 2 Basic Facilities
2.1 C + + Program Structure
2.2 Input/Output Streams
2.3 Constant
2.4 Functions
2.4.1 Function Declarations
2.4.2 Function Definitions
2.4.3 Default Parameters
2.4.4 Inline Functions
2.4.5 Overloaded Functions
2.5 References
2.5.1 Reference Definition
2.5.2 Reference Variables as Parameters
2.5.3 References as Value-Returning
2.5.4 References as Left-Hand Values
2.6 Namespaces
Word Tips
Exercises
Chapter 3 Classes and Objects ( I )
3.1 Structures
3.1.1 Defining a Structure
3.1.2 Accessing Members of Structures
3.1.3 Structures with Member Functions
3.2 Data Abstraction and Classes
3.2.1 Data Abstraction
3.2.2 Defining Classes
3.2.3 Defining Objects
3.2.4 Using Member Functions
3.2.5 In-Class Member Function Definition
3.2.6 File Structure of an Abstract Data Type
3.3 Information Hiding
3.4 Access Control
3.5 Constructors
3.5.1 Overloading Constructors
3.5.2 Constructors with Default Parameters
3.6 Destructors
3.6.1 Definition of Destructors
3.6.2 Order of Constructor and Destructor Calls
Word Tips
Exercises
Chapter 4 Classes and Objects ( II )
4.1 Constant Members
4.2 this Pointers
4.3 Static Members
4.4 Free Store
4.5 Objects as Members of A Class
4.6 Copy Members
4.6.1 Definition of Copy Constructors
4.6.2 Shallow Copy and Deep Copy
4.7 Arrays of Objects
4.8 Friends
4.8.1 Friend Functions
4.8.2 Friend Classes
4.9 Examples of User-Defined Types
Word Tips
Exercises
Chapter 5 Operator Overloading
5.1 Why Operator Overloading Is Need
5.2 Operator Functions
5.2.1 Overloaded Operators
5.2.2 Operator Functions
5.3 Binary and Unary Operators
5.3.1 Overloading Binary Operators
5.3.2 Overloading Unary Operators
5.4 Overloading Combinatorial Operators
5.5 Mixed Arithmetic of User-Defined Types
5.6 Type Conversion of User-Defined Types
5.7 Examples of Operator Overloading
5.7.1 A Complex Number Class
5.7.2 A String Class
Word Tips
Exercises
Chapter 6 Inheritance
6.1 Class Hierarchies
6.2 Derived Classes
6.2.1 Declaration of Derived Classes
6.2.2 Structure of Derived Classes
6.3 Constructors and Destructors of Derived Classes
6.3.1 Constructors of Derived Classes
6.3.2 Destructors of Derived Classes
6.3.3 Order of Calling Class Objects
6.3.4 Inheritance and Composition
6.4 Member Functions of Derived Classes
6.5 Access Control
6.5.1 Access Control in A Class
6.5.2 Access to Base Classes
6.6 Multiple Inheritance
6.6.1 Declaration of Multiple Inheritance
6.6.2 Constructors of Multiple Inheritance
6.7 Virtual Inheritance
6.7.1 Multiple Inheritance Ambiguities
6.7.2 Trying to Solve Inheritance Ambiguities
6.7.3 Virtual Base Classes
6.7.4 Constructing Objects of Multiple Inheritance
Word Tips
Exercises
Chapter 7 Polymorphism and Virtual Functions
7.1 Polymorphism
7.1.1 Concept of Polymorphism
7.1.2 Binding
7.2 Virtual Functions
7.2.1 Definition of Vitual Functions
7.2.2 Extensibility
7.2.3 Principle of Virtual Functions
7.2.4 Virtual Destructors
7.2.5 Function Overloading and Function Overriding
7.3 Abstract Base Classes
Word Tips
Exercises
Chapter 8 Templates
8.1 Templates Mechanism
8.2 Function Templates and Template Functions
8.2.1 Why We Use Function Templates?
8.2.2 Definition of Function Templates
8.2.3 Function Template Instantiation
8.2.4 Function Template with Different Parameter Types
8.2.5 Function Template Overloading
8.3 Class Templates and Template Classes
8.3.1 Definition of Class Templates
8.3.2 Class Template Instantiation
8.4 Non-Type Parameters for Templates
8.5 Derivation and Class Templates
Word Tips
Exercises
References