Australasia's Biggest Online Store

Shop over a million Toys in our Huge New Range

C++ Primer
By

Rating

Product Description
Product Details

Table of Contents

Preface xxiii Chapter 1: Getting Started 1

1.1 Writing a Simple C++ Program 2

1.2 A First Look at Input/Output 5

1.3 A Word About Comments 9

1.4 Flow of Control 11

1.5 Introducing Classes 19

1.6 The Bookstore Program 24

Chapter Summary 26

Defined Terms 26

Part I: The Basics 29 Chapter 2: Variables and Basic Types 31

2.1 Primitive Built-in Types 32

2.2 Variables 41

2.3 Compound Types 50

2.4 const Qualifier 59

2.5 Dealing with Types 67

2.6 Defining Our Own Data Structures 72

Chapter Summary 78

Defined Terms 78

Chapter 3: Strings, Vectors, and Arrays 81

3.1 Namespace using Declarations 82

3.2 Library string Type 84

3.3 Library vector Type 96

3.4 Introducing Iterators 106

3.5 Arrays 113

3.6 Multidimensional Arrays 125

Chapter Summary 131

Defined Terms 131

Chapter 4: Expressions 133

4.1 Fundamentals 134

4.2 Arithmetic Operators 139

4.3 Logical and Relational Operators 141

4.4 Assignment Operators 144

4.5 Increment and Decrement Operators 147

4.6 The Member Access Operators 150

4.7 The Conditional Operator 151

4.8 The Bitwise Operators 152

4.9 The sizeof Operator 156

4.10 Comma Operator 157

4.11 Type Conversions 159

4.12 Operator Precedence Table 166

Chapter Summary 168

Defined Terms 168

Chapter 5: Statements 171

5.1 Simple Statements 172

5.2 Statement Scope 174

5.3 Conditional Statements 174

5.4 Iterative Statements 183

5.5 Jump Statements 190

5.6 try Blocks and Exception Handling 193

Chapter Summary 199

Defined Terms 199

Chapter 6: Functions 201

6.1 Function Basics 202

6.2 Argument Passing 208

6.3 Return Types and the return Statement 222

6.4 Overloaded Functions 230

6.5 Features for Specialized Uses 236

6.6 Function Matching 242

6.7 Pointers to Functions 247

Chapter Summary 251

Defined Terms 251

Chapter 7: Classes 253

7.1 Defining Abstract Data Types 254

7.2 Access Control and Encapsulation 268

7.3 Additional Class Features 271

7.4 Class Scope 282

7.5 Constructors Revisited 288

7.6 static Class Members 300

Chapter Summary 305

Defined Terms 305

Part II: The C++ Library 307 Chapter 8: The IO Library 309

8.1 The IO Classes 310

8.2 File Input and Output 316

8.3 string Streams 321

Chapter Summary 324

Defined Terms 324

Chapter 9: Sequential Containers 325

9.1 Overview of the Sequential Containers 326

9.2 Container Library Overview 328

9.3 Sequential Container Operations 341

9.4 How a vector Grows 355

9.5 Additional string Operations 360

9.6 Container Adaptors 368

Chapter Summary 372

Defined Terms 372

Chapter 10: Generic Algorithms 375

10.1 Overview 376

10.2 A First Look at the Algorithms 378

10.3 Customizing Operations 385

10.4 Revisiting Iterators 401

10.5 Structure of Generic Algorithms 410

10.6 Container-Specific Algorithms 415

Chapter Summary 417

Defined Terms 417

Chapter 11: Associative Containers 419

11.1 Using an Associative Container 420

11.2 Overview of the Associative Containers 423

11.3 Operations on Associative Containers 428

11.4 The Unordered Containers 443

Chapter Summary 447

Defined Terms 447

Chapter 12: Dynamic Memory 449

12.1 Dynamic Memory and Smart Pointers 450

12.2 Dynamic Arrays 476

12.3 Using the Library: A Text-Query Program 484

Chapter Summary 491

Defined Terms 491

Part III: Tools for Class Authors 493 Chapter 13: Copy Control 495

13.1 Copy, Assign, and Destroy 496

13.2 Copy Control and Resource Management 510

13.3 Swap 516

13.4 A Copy-Control Example 519

13.5 Classes that Manage Dynamic Memory 524

13.6 Moving Objects 531

Chapter Summary 549

Defined Terms 549

Chapter 14: Overloaded Operations and Conversions 551

14.1 Basic Concepts 552

14.2 Input and Output Operators 556

14.3 Arithmetic and Relational Operators 560

14.4 Assignment Operators 563

14.5 Subscript Operator 564

14.6 Increment and Decrement Operators 566

14.7 Member Access Operators 569

14.8 Function-Call Operator 571

14.9 Overloading, Conversions, and Operators 579

Chapter Summary 590

Defined Terms 590

Chapter 15: Object-Oriented Programming 591

15.1 OOP: An Overview 592

15.2 Defining Base and Derived Classes 594

15.3 Virtual Functions 603

15.4 Abstract Base Classes 608

15.5 Access Control and Inheritance 511

15.6 Class Scope under Inheritance 617

15.7 Constructors and Copy Control 622

15.8 Containers and Inheritance 630

15.9 Text Queries Revisited 634

Chapter Summary 649

Defined Terms 649

Chapter 16: Templates and Generic Programming 651

16.1 Defining a Template 652

16.2 Template Argument Deduction 678

16.3 Overloading and Templates 694

16.4 Variadic Templates 699

16.5 Template Specializations 706

Chapter Summary 713

Defined Terms 713

Part IV: Advanced Topics 715 Chapter 17: Specialized Library Facilities 717

17.1 The tuple Type 718

17.2 The bitset Type 723

17.3 Regular Expressions 728

17.4 Random Numbers 745

17.5 The IO Library Revisited 752

Chapter Summary 769

Defined Terms 769

Chapter 18: Tools for Large Programs 771

18.1 Exception Handling 772

18.2 Namespaces 785

18.3 Multiple and Virtual Inheritance 802

Chapter Summary 816

Defined Terms 816

Chapter 19: Specialized Tools and Techniques 819

19.1 Controlling Memory Allocation 820

19.2 Run-Time Type Identification 825

19.3 Enumerations 832

19.4 Pointer to Class Member 835

19.5 Nested Classes 843

19.6 Union: A Space-Saving Class 847

19.7 Local Classes 852

19.8 Inherently Nonportable Features 854

Chapter Summary 862

Defined Terms 862

Appendix A: The Library 865

A.1 Library Names and Headers 866

A.2 A Brief Tour of the Algorithms 870

A.3 Random Numbers 882

Index 887

About the Author

Stanley B. Lippman has retired back to the Catalina Foothills where he is working on EEEK!, a computational model of the nervous system of the House Mouse, and An Off By One Error, a speculative novel set in the Northwestern Rain Forest. During his professional career, Stanley served as Distinguished Consultant for the Jet Propulsion Laboratory, Architect for the Visual C++ development group at Microsoft, member of technical staff at Bell Laboratories, two stints in Massive Multiplayer Online Gaming, and a surprisingly long stint in Feature Animation at Disney, DreamWorks, Pixar, and PDI. Stanley will be most remembered for his many years working with Dr. Stroustrup on the implementation of cfront, the standard implementation of C++ until the ISO standard. Josee Lajoie, now at Pixar, was a member of IBM Canada's C/C++ compiler development team, and chaired the core language working group for the original ANSI/ISO C++ standardization committee. Barbara E. Moo has nearly thirty years of software experience. During her fifteen years at AT&T, she worked closely with C++ inventor Bjarne Stroustrup and managed the C++ development team for several years.

Ask a Question About this Product More...
Write your question below:
Look for similar items by category
Home » Books » Computers » Programming » C++
How Fishpond Works
Fishpond works with suppliers all over the world to bring you a huge selection of products, really great prices, and delivery included on over 25 million products that we sell. We do our best every day to make Fishpond an awesome place for customers to shop and get what they want — all at the best prices online.
Webmasters, Bloggers & Website Owners
You can earn a 5% commission by selling C++ Primer on your website. It's easy to get started - we will give you example code. After you're set-up, your website can earn you money while you work, play or even sleep! You should start right now!
Authors / Publishers
Are you the Author or Publisher of a book? Or the manufacturer of one of the millions of products that we sell. You can improve sales and grow your revenue by submitting additional information on this title. The better the information we have about a product, the more we will sell!
Item ships from and is sold by Fishpond World Ltd.
Back to top