Back to School Savings: Save up to 30% on print books and eBooks. No promo code needed.
Back to School Savings: Save up to 30%
Object-Oriented Design and Programming with C++
Your Hands-On Guide to C++ Programming, with Special Emphasis on Design, Testing, and Reuse
1st Edition - August 28, 1995
Author: Ronald Leach
9 7 8 - 1 - 4 8 3 2 - 1 4 1 2 - 2
Object-Oriented Design and Programming with C++: Your Hands-On Guide to C++ Programming, with Special Emphasis on Design, Testing, and Reuse provides a list of software… Read more
Save 50% on book bundles
Immediately download your ebook while waiting for your print delivery. No promo code is needed.
Object-Oriented Design and Programming with C++: Your Hands-On Guide to C++ Programming, with Special Emphasis on Design, Testing, and Reuse provides a list of software engineering principles to guide the software development process. This book presents the fundamentals of the C++ language. Organized into two parts encompassing 10 chapters, this book begins with an overview of C++ and describes object-oriented programming and the history of C++. This text then introduces classes, polymorphism, inheritance, and overloading. Other chapters consider the C++ preprocessor and organization of class libraries. This book discusses as well the scope rules, separate compilation, class libraries, and their organization, exceptions, browsers, and exception handling. The final chapter deals with the design of a moderately complex system that provides file system stimulation. This book is a valuable resource for readers who are reasonably familiar with the C programming language and want to understand the issues in object-oriented programming using C++.
PrefaceSoftware Engineering PrinciplesPart I Fundamental Principles Chapter 1 Overview of C++ 1.1 What Is Object-Oriented Programming? 1.2 History of the C++ Programming Language 1.3 What Is C++? 1.4 Classes 1.5 Inheritance, Polymorphism, and Overloading Summary Exercises Chapter 2 Elementary Programming in C++ 2.1 Structure of a Single-Unit C++ Program 2.2 Fundamental Data Types in C++ 2.3 Output with cout 2.4 Formatted Output in C++ 2.5 Input with cin 2.6 Documentation and Commenting of C++ Programs 2.7 Control of C++ Programs 2.8 Operators in C++ 2.9 An Example: Processing an Input Stream 2.10 Differences in I/O between C and C++ 2.11 Testing Issues Summary Exercises Chapter 3 Elementary C++ Program Structure 3.1 Derived and Base Classes 3.2 Constructors, Destructors, and Other Functions 3.3 Passing Parameters to Functions in C and C++ 3.4 The inline Qualifier for Functions 3.5 Member and Friend Functions 3.6 The C++ Preprocessor 3.7 Library Functions and Class Libraries 3.8 Testing Issues Summary Exercises Chapter 4 Arrays and Pointers 4.1 Pointers, Arrays, and Pointer Arithmetic 4.2 Array Indexing and Pointer Arithmetic in C++ 4.3 Multidimensional Arrays in C++ 4 A Matrices in C++ 4.5 Interfacing with the Command Line: Parameters to main () 4.6 Pointers to Functions 4.7 Functions with a Variable Number of Arguments 4.8 Virtual Functions 4.9 Pointers to void 4.10 A Special Pointer: this Summary Exercises Chapter 5 Structured Data Types in C++ 5.1 Classes, Structs, and Templates 5.2 Stacks in C++ 5.3 Implementing Stacks in C++ Using Templates 5.4 Lists in C++ 5.5 Implementation of Lists Using Templates 5.6 Using Lists with Sparse Matrices 5.7 Queues in C++ 5.8 Implementation of Queues Using Templates 5.9 The Tree Data Type in C++ 5.10 Implementation of Trees Using Templates 5.11 The Standard C and C++ Libraries 5.12 Other C++ Class Libraries Summary Exercises Chapter 6 Advanced Input and Output 6.1 Input and Output in C and C++ 6.2 File Input and Output in C++ 6.3 Overloading the « and » Operators 6.4 Using C++ File Streams for Random Access Summary ExercisesPart II Software Engineering Chapter 7 Advanced C++ Program Structure 7.1 Separate Compilation 7.2 The make Utility and Separate Compilation 7.3 Organization of Class Libraries 7.4 Examples of Class Libraries 7.5 Testing Issues 7.6 Exceptions in C++ Summary Exercises Chapter 8 Modeling Object-Oriented System 8.1 Design Representations 8.2 Object-Oriented Systems 8.3 Class Design Issues 8.4 What Is an Object? 8.5 An Example of Class Development: The String Class 8.6 Concepts Related to Objects 8.7 Design Representations for Object-Oriented Systems Summary Exercises Chapter 9 An Example: A Graphical Database 9.1 Requirements 9.2 Determination of Objects for Representation of Polyhedra 9.3 Class Descriptions 9.4 A Graphical Database Summary Exercises Chapter 10 Making the Transition to an Object-Oriented System 10.1 Introduction 10.2 Specifications for a File System Simulation 10.3 Procedurally Based System Design 10.4 Implementation Details for a Procedurally Based Disk Simulation 10.5 Source Code for Procedural System (Optional) 10.6 Reengineering a Procedurally Based System into an Object-Oriented One 10.7 An Object-Oriented Disk Simulation Program 10.8 Source Code for an Object-Oriented Solution 10.9 Comparison of Object-Oriented and Procedural Solutions Summary Exercises Appendix 1 Reserved Words in C++ Appendix 2 Syntax Summary of C++ Identifiers Appendix 3 Review of the C Language Appendix 4 The ANSI Standard C Library A4.1 Organization A4.2 Commonly Used Functions A4.3 Some UNIX I/O C Functions A4.4 Rarely Used Functions A4.5 Constants, Variables, and Types Appendix 5 The Draft ANSI Standard C++ Library A5.1 Guiding Principles Relating C and C++ Libraries A5.2 New Header Files in the Draft C++ Library A5.3 C Header Files in the Draft C++ Library Appendix 6 Solutions and Hints to Selected ExercisesReferencesIndex