C++ Primer
Addison Wesley Imprint in der Pearson Education Deutschland (Verlag)
978-3-8273-2274-6 (ISBN)
- Titel ist leider vergriffen;
keine Neuauflage - Artikel merken
Diese vollständig aktualisierte Ausgabe hebt den modernen Stil der C++-Programmierung hervor. Denn mittlerweile steht die Standardbibliothek im Mittelpunkt, während die Techniken für die Low-Level-Programmierung mit der Zeit an Gewicht verloren haben. Grundlagen und Bibliothek werden so gemeinsam vorgestellt. Dadurch können Sie schnell sinnvolle Programme schreiben. Erst nachdem diese feste Grundlage zur Nutzung der Bibliothek und zum Schreiben der Art von abstrakten Programmen gelegt wurde, die die Bibliothek ermöglicht, lernen Sie die Merkmale von C++ kennen, mit deren Hilfe Sie Ihre eigenen Abstraktionen schreiben können.
Teil I und II behandeln die Grundlagen der Sprache und die Bibliothek. Der Schwerpunkt dieser Teile liegt darauf, Ihnen beizubringen, wie Sie C++-Programme schreiben und Abstraktionen der Bibliothek einsetzen. In Teil III bis V geht es darum, wie Sie Typen schreiben. Teil III führt Sie in das Herzstück von C++ ein: die Unterstützung der Klassen. Der Klassenmechanismus ist die Grundlage, um eigene Abstraktionen zu schreiben, und das Fundament für objektorientierte und generische Programmierung, die wir in Teil IV behandeln. Diese Buch schließt mit Teil V über erweiterte Merkmale ab, die hauptsächlich dazu eingesetzt werden, große, komplexe System zu gliedern.
Dieses Buch bietet eine umfassende Einführung in die Programmiersprache C++. Es ist ein Grundlehrbuch mit einem klaren, praxisorientierten Ansatz, der durch zahlreiche Beispiele und andere Lernhilfen unterstützt wird. Anders als andere einführende Bücher enthält dieses auch eine ausführliche Beschreibung der Sprache mit besonderem Augenmerk auf aktuelle und wirkungsvolle Programmiertechniken.Diese vollständig aktualisierte Ausgabe hebt den modernen Stil der C++-Programmierung hervor. Denn mittlerweile steht die Standardbibliothek im Mittelpunkt, während die Techniken für die Low-Level-Programmierung mit der Zeit an Gewicht verloren haben. Grundlagen und Bibliothek werden so gemeinsam vorgestellt. Dadurch können Sie schnell sinnvolle Programme schreiben. Erst nachdem diese feste Grundlage zur Nutzung der Bibliothek und zum Schreiben der Art von abstrakten Programmen gelegt wurde, die die Bibliothek ermöglicht, lernen Sie die Merkmale von C++ kennen, mit deren Hilfe Sie Ihre eigenen Abstraktionen schreiben können.Teil I und II behandeln die Grundlagen der Sprache und die Bibliothek. Der Schwerpunkt dieser Teile liegt darauf, Ihnen beizubringen, wie Sie C++-Programme schreiben und Abstraktionen der Bibliothek einsetzen. In Teil III bis V geht es darum, wie Sie Typen schreiben. Teil III führt Sie in das Herzstück von C++ ein: die Unterstützung der Klassen. Der Klassenmechanismus ist die Grundlage, um eigene Abstraktionen zu schreiben, und das Fundament für objektorientierte und generische Programmierung, die wir in Teil IV behandeln. Diese Buch schließt mit Teil V über erweiterte Merkmale ab, die hauptsächlich dazu eingesetzt werden, große, komplexe System zu gliedern.
Stanley B. Lippman arbeitet in den ATundT Bell Laboratories, wo er an der Implementierung verschiedener Versionen des ATundT C Plusplus Compilers mitgearbeitet hat. Er hat C Plusplus in vielen Kursen für Anfänger und erfahrene Programmierer unterrichtet.
Inhaltsverzeichnis: (der US-Originalausgabe)
Preface xix
Chapter 1. Getting Started 1
1.1 Writing a Simple C++ Program 21.2 A First Look at Input/Output 5 1.3 A Word About Comments 101.4 Control Structures 11 1.5 Introducing Classes 201.6 The C++ Program 25 Chapter Summary 28Defined Terms 28
Part I. The Basics 31
Chapter 2. Variables and Basic Types 33
2.1 Primitive Built-in Types 342.2 Literal Constants 37 2.3 Variables 432.4 const Qualifier 56 2.5 References 582.6 Typedef Names 61 2.7 Enumerations 622.8 Class Types 63 2.9 Writing Our Own Header Files 67Chapter Summary 73 Defined Terms 73
Chapter 3. Library Types 77
3.1 Namespace using Declarations 783.2 Library string Type 80 3.3 Library vector Type 903.4 Introducing Iterators 95 3.4.1 Iterator Arithmetic 1003.5 Library bitset Type 101 Chapter Summary 107Defined Terms 107
Chapter 4. Arrays and Pointers 109
4.1 Arrays 1104.2 Introducing Pointers 114 4.3 C-Style Character Strings 1304.4 Multidimensioned Arrays 141 Chapter Summary 145Defined Terms 145
Chapter 5. Expressions 147
5.1 Arithmetic Operators 1495.2 Relational and Logical Operators 152 5.3 The Bitwise Operators 1545.4 Assignment Operators 159 5.5 Increment and Decrement Operators 1625.6 The Arrow Operator 164 5.7 The Conditional Operator 1655.8 The size of Operator 167 5.9 Comma Operator 1685.10 Evaluating Compound Expressions 168 5.11 The new and delete Expressions 1745.12 Type Conversions 178 Chapter Summary 188Defined Terms 188
Chapter 6. Statements 191
6.1 Simple Statements 1926.2 Declaration Statements 193 6.3 Compound Statements (Blocks) 1936.4 Statement Scope 194 6.5 The if Statement 1956.5.1 The if Statement else Branch 197 6.6 The switch Statement 1996.7 The whileStatement 2046.8 The for Loop Statement 2076.9 The do while Statement 210 6.10 The break Statement 2126.11 The continue Statement 214 6.12 The goto Statement 2146.13 try Blocks and Exception Handling 215 6.13.1 A throw Expression 2166.13.2 The try Block 217 6.13.3 Standard Exceptions 2196.14 Using the Preprocessor for Debugging 220 Chapter Summary 223Defined Terms 223
Chapter 7. Functions 225
7.1 Defining a Function 2267.2 Argument Passing 229 7.3 The return Statement 2457.4 Function Declarations 251 7.5 Local Objects 2547.6 Inline Functions 256 7.7 ClassMemberFunctions 2587.8 Overloaded Functions 265 7.9 Pointers to Functions 276Chapter Summary 280 Defined Terms 280
Chapter 8. The IO Library 283
8.1 An Object-Oriented Library 2848.2 Condition States 287 8.3 Managing the Output Buffer 2908.4 File Input and Output 293 8.5 String Streams 299Chapter Summary 302 Defined Terms 302
Part II. Containers and Algorithms 303
Chapter 9. Sequential Containers 305
9.1 Defining a Sequential Container 3079.2 Iterators andIteratorRanges 311 9.3 Sequence Container Operations 3169.4 How a vector Grows 330 9.5 Deciding Which Container to Use 3339.6 strings Revisited 335 9.7 Container Adaptors 348Chapter Summary 353 Defined Terms 353
Chapter 10. Associative Containers 355
10.1 Preliminaries: the pair Type 35610.2 Associative Containers 358 10.3 The map Type 36010.4 The set Type 372 10.5 The multimap and multiset Types 37510.6 Using Containers: Text-Query Program 379 Chapter Summary 388Defined Terms 388
Chapter 11. Generic Algorithms 391
11.1 Overview 39211.2 A First Look at the Algorithms 395 11.3 Revisiting Iterators 40511.4 Structure of Generic Algorithms 419 11.5 Container-Specific Algorithms 421Chapter Summary 424Defined Terms 424
Part III. Classes and Data Abstraction 427
Chapter 12. Classes 429
12.1 Class Definitions and Declarations 43012.2 The Implicit this Pointer 440 12.3 Class Scope 44412.4 Constructors 451 12.5 Friends 46512.6 static Class Members 467 Chapter Summary 473Defined Terms 473
Chapter 13 Copy Control 475
13.1 The Copy Constructor 47613.2 The Assignment Operator 482 13.3 The Destructor 48413.4 A Message-Handling Example 486 13.5 Managing Pointer Members 492Chapter Summary 502 Defined Terms 502
Chapter 14. Overloaded Operations and Conversions 505
14.1 Defining an Overloaded Operator 50614.2 Input andOutputOperators 513 14.3 Arithmetic and Relational Operators 51714.4 Assignment Operators 520 14.5 Subscript Operator 52214.6 Member Access Operators 523 14.7 Increment and Decrement Operators 52614.8 Call Operator and Function Objects 530 14.9 Conversions and Class Types 535Chapter Summary . 552 Defined Terms 552
Part IV. Object-Oriented and Generic Programming 555
Chapter 15. Object-Oriented Programming 557
15.1 OOP: An Overview 55815.2 Defining Base and Derived Classes 560 15.3 Conversions and Inheritance 57715.4 Constructors and Copy Control 580 15.5 Class Scope under Inheritance 59015.6 Pure Virtual Functions 595 15.7 Containers and Inheritance 59715.8 Handle Classes and Inheritance 598 15.9 Text Queries Revisited 607Chapter Summary 621 Defined Terms 621
Chapter 16. Templates and Generic Programming 623
16.1 Template Definitions 62416.2 Instantiation 636 16.3 Template Compilation Models 64316.4 Class Template Members 647 16.5 A Generic Handle Class 66616.6 Template Specializations 671 16.7 Overloading and Function Templates 679Chapter Summary 683Defined Terms 683
Part V. Advanced Topics 685
Chapter 17. Tools for Large Programs 687
17.1 Exception Handling 68817.2 Namespaces 712 17.3 Multiple and Virtual Inheritance 731Chapter Summary 748 Defined Terms 748
Chapter 18. Specialized Tools and Techniques 753
18.1 Optimizing Memory Allocation 75418.2 Run-Time Type Identification 77218.3 Pointer to Class Member 78018.4 Nested Classes 786 18.5 Union: A Space-Saving Class 79218.6 Local Classes 796 18.7 Inherently Nonportable Features 797Chapter Summary 805 Defined Terms 805
Appendix A. The Library 809
A.1 Library Names and Headers 810A.2 A Brief Tour of the Algorithms 811 A.3 The IO Library Revisited 825
Index 843
Sprache | deutsch |
---|---|
Maße | 168 x 240 mm |
Gewicht | 1650 g |
Einbandart | Paperback |
Themenwelt | Informatik ► Programmiersprachen / -werkzeuge ► C / C++ |
Schlagworte | C++ • C++ (Programmiersprache) • Datentyp • Funktion • HC/Informatik, EDV/Programmiersprachen • Konstante • Programmierung |
ISBN-10 | 3-8273-2274-X / 382732274X |
ISBN-13 | 978-3-8273-2274-6 / 9783827322746 |
Zustand | Neuware |
Haben Sie eine Frage zum Produkt? |
aus dem Bereich