Object-Oriented Programming Using C++, 2/e
Ira Pohl
- 出版商: Addison Wesley
- 出版日期: 1996-12-16
- 售價: $735
- 語言: 英文
- 頁數: 576
- 裝訂: Paperback
- ISBN: 0201895501
- ISBN-13: 9780201895506
-
相關分類:
C++ 程式語言、Object-oriented
無法訂購
買這商品的人也買了...
-
$1,029Fundamentals of Data Structures in C++
-
$686Introduction to the Theory of Computation
-
$399CCNA Self-Study: Interconnecting Cisco Network Devices (Hardcover)
-
$650$553 -
$970Introduction to Algorithms, 2/e
-
$1,150$1,127 -
$500$450 -
$1,710$1,625 -
$3,120$2,964 -
$1,274Computer Architecture: A Quantitative Approach, 3/e(精裝本)
-
$720$569 -
$690$587 -
$590$466 -
$690$538 -
$560$504 -
$850$723 -
$580$493 -
$880$748 -
$450$351 -
$880$581 -
$680$578 -
$620$527 -
$750$585 -
$580$493 -
$890$757
相關主題
商品描述
Table Of Contents
1. Why Object-Oriented Programming in C++. Object-Oriented Programming.
Why C++ is a Better C.
Encapsulation and Type Extensibility.
Construction of Objects.
Conversions, Operators, and Seamless Types.
Inheritance.
Polymorphism.
Benefits of Object-Oriented Programming.
Why C++ is a Better C.
Encapsulation and Type Extensibility.
Construction of Objects.
Conversions, Operators, and Seamless Types.
Inheritance.
Polymorphism.
Benefits of Object-Oriented Programming.
2. Native Types and Statements.
Program Elements.
Input and Output.
Program Structure.
Simple Types.
The Traditional Conversions.
Enumeration Types.
Expressions.
Statements.
Input and Output.
Program Structure.
Simple Types.
The Traditional Conversions.
Enumeration Types.
Expressions.
Statements.
3. Functions and Pointers.
Functions.
Function Definition.
The RETURN Statement.
Function Prototypes.
Default Arguments.
Overloading Functions.
Inlining.
Scope.
Storage Class.
Pointer Types.
Reference Declarations and Call-By-Reference.
The Use of VOID.
Arrays and Pointers.
The Relationship Between Arrays and Pointers.
Passing Arrays to Functions.
Strings: A Kernel Language ADT.
Multidimensional Arrays.
Free Storage Operators NEW and DELETE.
Function Definition.
The RETURN Statement.
Function Prototypes.
Default Arguments.
Overloading Functions.
Inlining.
Scope.
Storage Class.
Pointer Types.
Reference Declarations and Call-By-Reference.
The Use of VOID.
Arrays and Pointers.
The Relationship Between Arrays and Pointers.
Passing Arrays to Functions.
Strings: A Kernel Language ADT.
Multidimensional Arrays.
Free Storage Operators NEW and DELETE.
4. Implementing ADTs in the Base Language.
The Aggregate Type STRUCT.
Structure Pointer Operator.
An Example: Stack.
Unions.
Complex Numbers.
An Example: Flushing.
Bit Fields.
An Example: Dynamic Arrays.
Structure Pointer Operator.
An Example: Stack.
Unions.
Complex Numbers.
An Example: Flushing.
Bit Fields.
An Example: Dynamic Arrays.
5. Data Hiding and Member Functions.
Member Functions.
Visibility PRIVATE and PUBLIC.
Classes.
Class Scope.
STATIC Member.
An Example: Revisiting Flushing.
The THIS Pointer.
STATIC and CONST Member Functions.
Containers and Items Access.
Visibility PRIVATE and PUBLIC.
Classes.
Class Scope.
STATIC Member.
An Example: Revisiting Flushing.
The THIS Pointer.
STATIC and CONST Member Functions.
Containers and Items Access.
6. Object Creation.
Classes with Constructors.
Construction a Dynamically Sized Stack.
Classes with Destructors.
An Example: Dynamically Allocated Strings.
A Class.
Members That Are Class Types.
An Example: A Singly Linked List.
Polynomials as a Linked List.
Strings Using Reference Semantics.
No Constructor Copy Constructor, and Other Mysteries.
Construction a Dynamically Sized Stack.
Classes with Destructors.
An Example: Dynamically Allocated Strings.
A Class.
Members That Are Class Types.
An Example: A Singly Linked List.
Polynomials as a Linked List.
Strings Using Reference Semantics.
No Constructor Copy Constructor, and Other Mysteries.
7. Ad Hoc Polymorphism.
Class-Defined Conversion.
Overloading and Function Selection.
FRIEND Functions.
Overloading Operators.
Unary Operator Overloading.
Binary Operator Overloading.
Overloading Assignment and Subscripting Operators.
More Signature Matching.
Polynomial: Type and Language Expectations.
Overloading and Function Selection.
FRIEND Functions.
Overloading Operators.
Unary Operator Overloading.
Binary Operator Overloading.
Overloading Assignment and Subscripting Operators.
More Signature Matching.
Polynomial: Type and Language Expectations.
8. Visitation: Iterators and Containers.
Visitation.
Iterators.
An Example: QUICKSORT.
Friendly Classes and Iterators.
Overloading Operator () for Indexing.
Overloading NEW and DELETE.
Pointer Operators and Smart Pointers.
Genericity with VOID.
Iterators.
An Example: QUICKSORT.
Friendly Classes and Iterators.
Overloading Operator () for Indexing.
Overloading NEW and DELETE.
Pointer Operators and Smart Pointers.
Genericity with VOID.
9. Inheritance: Subtyping and Code Reuse.
A Derived Class.
Typing Conversions and Visibility.
Code Reuse: A Dynamic Array Bounds.
Code Reuse: A Binary Tree Class.
Virtual Functions.
Abstract Base Classes.
Multiple Inheritance.
Inheritance and Design.
Detailed C++ Considerations.
Typing Conversions and Visibility.
Code Reuse: A Dynamic Array Bounds.
Code Reuse: A Binary Tree Class.
Virtual Functions.
Abstract Base Classes.
Multiple Inheritance.
Inheritance and Design.
Detailed C++ Considerations.
10. Parametric Polymorphism.
Template Class Stack.
Function Templates.
Class Templates.
Parameterizing the Class VECT.
Parameterizing QUICKSORT.
Parameterized Binary Search Tree.
Inheritance.
Ownership and Design Issues.
Detailed Considerations.
Function Templates.
Class Templates.
Parameterizing the Class VECT.
Parameterizing QUICKSORT.
Parameterized Binary Search Tree.
Inheritance.
Ownership and Design Issues.
Detailed Considerations.
11. Exceptions.
Using ASSERT.H.
Using SIGNAL.H.
C++ Exceptions.
Throwing Exceptions.
TRY Blocks.
Handlers.
Exception Specification.
TERMINATE () and UNEXPECTED().
Example Exception Code.
The Philosophy of Error Recovery.
Using SIGNAL.H.
C++ Exceptions.
Throwing Exceptions.
TRY Blocks.
Handlers.
Exception Specification.
TERMINATE () and UNEXPECTED().
Example Exception Code.
The Philosophy of Error Recovery.
12. OOP Using C++.
OOP Language Requirements.
ADTs in Non-OOP Languages.
Clients and Manufacturers.
Reuse and Inheritance.
Polymorphism.
Language Complexity.
C++ OOP Bandwagon.
Platonism: Tabula Rasa Design.
Design Principles.
Schema, Diagrams and Tools.
Last Word.
ADTs in Non-OOP Languages.
Clients and Manufacturers.
Reuse and Inheritance.
Polymorphism.
Language Complexity.
C++ OOP Bandwagon.
Platonism: Tabula Rasa Design.
Design Principles.
Schema, Diagrams and Tools.
Last Word.
Appendices.
ASCII Character Codes.
Operator Precedence and Associativity.
C++ Language Guide.
Input and Output.
Operator Precedence and Associativity.
C++ Language Guide.
Input and Output.
Index. 0201895501T04062001