Navigating C++ and Object-Oriented Design (Bk/CD-ROM)
Prentice Hall (Verlag)
978-0-13-532748-7 (ISBN)
- Titel ist leider vergriffen;
keine Neuauflage - Artikel merken
Any professional programmer who wants to learn C++, including applications programmers, software engineers, system architects, and product maintenance personnel. Any student learning C++ or object-oriented design; classes in algorithms, data structures or general software engineering will also use this book if the course's application language is C++.
To write C++ code that really meets its potential, programmers need to understand both C++ and object-oriented design methodologies. That's the premise behind Moving to C++ With Object-Oriented Design — unlike many other books, which teach either C++ or object-design, but not both. This comprehensive, practical tutorial, refined through years of teaching C++ to professional developers, is fully up-to-date, covering even new C++ features such as templates and exception handling.
Paul Anderson is President, cofounder, and key course developer at Anderson Software Group, Inc. a professional consulting and training company specializing in teaching C++, C, Java, Object-Oriented Design, UNIX, Shell Programming, and UNIX internals. As a seminar leader, Paul has taught courses to thousands of software developers. Gail Anderson is Director of Research and cofounder of Anderson Software Group, Inc. A key developer for courses on C++, Advanced C++, Java, and Object-Oriented Design with C++, she specializes in researching object-oriented design methodologies and programming techniques.
1. Getting Started.
Object-Oriented Design. Object Modeling Technique (OMT). Object Model Notation. Scenarios. Putting It All Together. Key Point Summary. Exercises.
2. C++ Basics.
Data Representation and Built-in Types. Preprocessor Directives. Comments. Type-Safe I/O. Operators and Expressions. Control Flow Constructs. Putting It All Together. Key Point Summary. Exercises.
3. C++ Program Structure.
Functions. Structures and Unions. References with Functions. Storage Classes. Exceptions. Namespaces. Dynamic Memory Allocation. Putting It All Together. Key Point Summary. Exercises.
4. Classes.
What Is Encapsulation? Classes. Constructors. Destructors. What's this? Exception Objects. Const Objects. Volatile Objects. Copy Constructors. The Problem with Public Data Members. Data Member Objects. Class Member Initialization. Putting It All Together. Key Point Summary. Exercises.
5. Working with Classes.
Using explicit. Object Lifetimes. Static Data Members. Static Member Functions. Static Objects. Arrays of Class Objects. Pointers to Class Members. Friend Classes. Nested Classes. Local Classes. Putting It All Together. Key Point Summary. Exercises.
6. Overloading.
Why Overload Functions? Function Overloading. Overloading Resolution. Why Overload Operators? Overloadable Operators. Operator Functions. Putting It All Together. Key Point Summary. Exercises.
7. Class Design.
What Is Class Design? A Class Design Boilerplate. A String Class. A Range Integer Class. Putting It All Together. Key Point Summary. Exercises.
8. Object Storage Management.
Global new and delete. Class-Specific new and delete. Reference Counts. Putting It All Together. Key Point Summary. Exercises.
9. Template Functions.
Why Should Functions Be Generic? Template Function Definition. Template Function Instantiation. Overloading Template Functions. Specializing Template Functions. Putting It All Together. Key Point Summary. Exercises.
10. Template Classes.
Why Should Classes Be Generic? Template Class Definition. Template Class Instantiation. Specializing Template Classes. Containment with Template Classes. Composite Templates. Template Class Static Members. Constant Expression Parameters. Template Friend Functions. Template Friend Classes. Template Nested Classes. Member Templates. Putting It All Together. Key Point Summary. Exercises.
11. Inheritance.
Why Use Inheritance? Public Derivation. Subtypes. Virtual Functions. Protected Access. Using Declarations. Private Derivation. Protected Derivation. Summary of Derivation Options. Polymorphism with a Generic PtrList Class. Abstract Base Classes. Virtual Constructors. A Class Design Boilerplate with Inheritance. Putting It All Together. Key Point Summary. Exercises.
12. Run-Time Type Identification.
Why Is RTTI Necessary? The Dynamic Cast Operator. The Typeid Operator. RTTI Applications. Putting It All Together. Key Point Summary. Exercises.
13. Exception Handling.
Why Use Exceptions? Designing with Exceptions. Exception Hierarchies. Resource Management. Uncaught Exceptions. Exception Specifications. Unexpected Exceptions. Putting It All Together. Key Point Summary. Exercises.
14. Multiple Inheritance.
Why Use Multiple Inheritance? Multiple Inheritance Format. Multiple Inheritance Characteristics. Distinct Base Classes (Pattern 1). Multiple Inclusion (Pattern 2). Virtual Base Classes (Pattern 3). Interface and Implementation. Putting It All Together. Key Point Summary. Exercises.
Appendix A. IOStream Library.
Why Use the IOStream Library? IOStream Overview. IOStream Examples.
Appendix B. Standard Template Library.
Why Use STL? STL Overview. STL Examples. STL References.
Appendix C. C++ Operator Precedence.
C++ Operator Precedence.
Index.
Erscheint lt. Verlag | 11.11.1997 |
---|---|
Verlagsort | Upper Saddle River |
Sprache | englisch |
Maße | 190 x 240 mm |
Gewicht | 1426 g |
Themenwelt | Mathematik / Informatik ► Informatik ► Programmiersprachen / -werkzeuge |
Informatik ► Software Entwicklung ► Objektorientierung | |
ISBN-10 | 0-13-532748-2 / 0135327482 |
ISBN-13 | 978-0-13-532748-7 / 9780135327487 |
Zustand | Neuware |
Haben Sie eine Frage zum Produkt? |
aus dem Bereich