shopping cart
Save up to 30% on our Staff Picks
Call us:  800-878-7323 HELP
McAfee SECURE helps keep you safe from identity theft, credit card fraud, spyware, spam, viruses and online scams.
Powell's Q&A, Q&A | December 13, 2009

Norberto Fuentes: IMG Powell's Q&A: Norberto Fuentes



Describe your latest project. Norton has just published The Autobiography of Fidel Castro, a novel that took seven years of my life to complete as I... Continue »
  1. $19.56 Sale Hardcover add to wish list

Ships free on qualified orders.
Add to Cart
$10.00
List price: $47.95
Used Trade Paper
Ships in 1 to 3 days
Add to Wishlist
Qty Store Section
1 Technical Computer Languages- C++

C++ Primer 3RD Edition

by Stanley B Lippman

C++ Primer 3RD Edition Cover
Out of Print

Synopses & Reviews

Publisher Comments:

"C++ Primer is well known as one of the best books for learning C++ and is useful for C++ programmers of all skill levels. This Fourth Edition not only keeps this tradition alive, it actually improves on it."

--Steve Vinoski, Chief Engineer, Product Innovation, IONA Technologies

"The Primer really brings this large and complex language down to size."

--Justin Shaw, Senior Member of Technical Staff, Electronic Programs Division, The Aerospace Corporation

"It not only gets novices up and running early, but gets them to do so using good programming practices."

--Nevin ":-)" Liber, Senior Principal Engineer (C++ developer since 1988)

This popular tutorial introduction to standard C++ has been completely updated, reorganized, and rewritten to help programmers learn the language faster and use it in a more modern, effective way.

Just as C++ has evolved since the last edition, so has the authors' approach to teaching it. They now introduce the C++ standard library from the beginning, giving readers the means to write useful programs without first having to master every language detail. Highlighting today's best practices, they show how to write programs that are safe, can be built quickly, and yet offer outstanding performance. Examples that take advantage of the library, and explain the features of C++, also show how to make the best use of the language. As in its previous editions, the book's authoritative discussion of fundamental C++ concepts and techniques makes it a valuable resource even for more experienced programmers. Program Faster and More Effectively with This Rewritten Classic

  • Restructured for quicker learning, using the C++ standard library
  • Updated to teach the most current programming styles and program design techniques
  • Filled with new learning aids that emphasize important points, warn about common pitfalls, suggest good programming practices, and provide general usage tips
  • Complete with exercises that reinforce skills learned
  • Authoritative and comprehensive in its coverage

The source code for the book's extended examples is available on the Web at the address below.www.awprofessional.com/cpp_primer

Book News Annotation:

A book/disk package with a sense of humor, bridging the gap between C++ as described in beginner and intermediate-level works and C++ as it is practiced by experts. Numerous techniques are explained in sections on indirection, class hierarchies, and memory management. Other topics include template creation, exception handling, pointers, and optimization techniques. Focus is on ANSI C++. The companion disk for Windows contains source code. This third edition is a revision of Secrets of the C++ Masters and includes a new appendix comparing C++ with Java.
Annotation c. Book News, Inc., Portland, OR (booknews.com)

Synopsis:

Completely rewritten, this tutorial is driven by examples which help the novice C++ programmer solve problems. It combines the practical experience and writing of Stanley Lippman with the inside knowledge of the ANSI/ISO Standards draft from Josee Lajoie.

Synopsis:

C++ is the dominant programming language for large-scale programs, therefore many programmers need to know C++. Real world applications of C++ include networking, visualization, database access, and numerical analysis. Typically used for projects that span multiple areas that other programming languages can't handle.

Synopsis:

The third edition of the C++ Primer combines Stanley Lippman's practical experience with Jos?e Lajoie's inside knowledge of the ANSI/ISO Standard C++. This tutorial is rewritten to describe the features and programming usage of Standard C++. Especially useful for developers new to C++ are the many real-world programming examples that illustrate the design of generic and object-oriented programs, the use of templates, and other aspects of program design using Standard C++. In addition, the C++ Primer provides usage and efficiency guidelines where appropriate. Highlights x Clear, practical and example-driven coverage of the Standard Library, with emphasis on the containers, iterators and algorithms (also known as the Standard Template Library), the string class and iostreams x A detailed look at the new features of Standard C++; exception handling, run-time type identification, namespaces, the built-in bool type, and new-style cast-notation, with advice on how to effectively use them. x A thorough introduction of the advanced language features, such as templates, classes, and inheritance in support of generic programming, object-oriented programming and object-based programming. x An appendix that can be used as a quick reference for the generic algorithms, describing their behavior, and providing concrete examples of how to use them.

Description:

The third edition of the C++ Primer combines Stanley Lippman's practical experience with Jos?e Lajoie's inside knowledge of the ANSI/ISO Standard C++. This tutorial is rewritten to describe the features and programming usage of Standard C++. Especially useful for developers new to C++ are the many real-world programming examples that illustrate the design of generic and object-oriented programs, the use of templates, and other aspects of program design using Standard C++. In addition, the C++ Primer provides usage and efficiency guidelines where appropriate. Highlights x Clear, practical and example-driven coverage of the Standard Library, with emphasis on the containers, iterators and algorithms (also known as the Standard Template Library), the string class and iostreams x A detailed look at the new features of Standard C++; exception handling, run-time type identification, namespaces, the built-in bool type, and new-style cast-notation, with advice on how to effectively use them. x A thorough introduction of the advanced language features, such as templates, classes, and inheritance in support of generic programming, object-oriented programming and object-based programming. x An appendix that can be used as a quick reference for the generic algorithms, describing their behavior, and providing concrete examples of how to use them.

About the Author

Stanley B. Lippman is Architect with the Visual C++ development team at Microsoft. Previously, he served as a Distinguished Consultant at the Jet Propulsion Laboratories (JPL). Stan spent more than twelve years at Bell Laboratories, where he worked with Bjarne Stroustrup on the original C++ implementation and the Foundation research project. After Bell Laboratories, Stan worked at Disney Feature Animation, originally as principal software engineer, then as software technical director on Fantasia 2000.

Josée Lajoie is a staff development analyst in the IBM Canada Laboratory C/C++ Compiler group, and is currently the chair of the core language working group for the ANSI/ISO C++ Standard Committee. In addition, she is a regular columnist on the evolution of the C++ Language Standard for the C++ Report..

Barbara E. Moo is an independent consultant with 20 years' experience in the software field. During her nearly 15 years at AT&T, she worked on one of the first commercial products ever written in C++, managed the company's first C++ compiler project, and directed the development of AT&T's award-winning WorldNet Internet service business.

0201721481AB01312005

Table of Contents

Preface     xix

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     10
1.4 Control Structures     11
1.5 Introducing Classes    20
1.6 The C++ Program    25
Chapter Summary    28
Defined Terms    28

Part I. The Basics    31

Chapter 2. Variables and Basic Types    33

2.1 Primitive Built-in Types    34
2.2 Literal Constants     37
2.3 Variables     43
2.4 const Qualifier    56
2.5 References    58
2.6 Typedef Names    61
2.7 Enumerations    62
2.8 Class Types     63
2.9 Writing Our Own Header Files    67
Chapter Summary    73
Defined Terms     73

Chapter 3. Library Types      77

3.1 Namespace using Declarations      78
3.2 Library string Type     80
3.3 Library vector Type      90
3.4 Introducing Iterators      95
3.4.1 Iterator Arithmetic      100
3.5 Library bitset Type      101
Chapter Summary      107
Defined Terms      107

Chapter 4. Arrays and Pointers 109

4.1 Arrays      110
4.2 Introducing Pointers      114
4.3 C-Style Character Strings      130
4.4 Multidimensioned Arrays      141
Chapter Summary      145
Defined Terms      145

Chapter 5. Expressions      147

5.1 Arithmetic Operators      149
5.2 Relational and Logical Operators      152
5.3 The Bitwise Operators      154
5.4 Assignment Operators      159
5.5 Increment and Decrement Operators      162
5.6 The Arrow Operator      164
5.7 The Conditional Operator      165
5.8 The size of Operator      167
5.9 Comma Operator      168
5.10 Evaluating Compound Expressions      168
5.11 The new and delete Expressions      174
5.12 Type Conversions      178
Chapter Summary      188
Defined Terms      188

Chapter 6. Statements      191

6.1 Simple Statements      192
6.2 Declaration Statements      193
6.3 Compound Statements (Blocks)      193
6.4 Statement Scope      194
6.5 The if Statement      195
6.5.1 The if Statement else Branch      197
6.6 The switch Statement      199
6.7 The whileStatement      204
6.8 The for Loop Statement      207
6.9 The do while Statement      210
6.10 The break Statement      212
6.11 The continue Statement      214
6.12 The goto Statement      214
6.13 try Blocks and Exception Handling      215
6.13.1 A throw Expression      216
6.13.2 The try Block      217
6.13.3 Standard Exceptions      219
6.14 Using the Preprocessor for Debugging      220
Chapter Summary      223
Defined Terms      223

Chapter 7. Functions      225

7.1 Defining a Function      226
7.2 Argument Passing      229
7.3 The return Statement      245
7.4 Function Declarations      251
7.5 Local Objects      254
7.6 Inline Functions      256
7.7 ClassMemberFunctions      258
7.8 Overloaded Functions      265
7.9 Pointers to Functions      276
Chapter Summary      280
Defined Terms      280

Chapter 8. The IO Library      283

8.1 An Object-Oriented Library      284
8.2 Condition States      287
8.3 Managing the Output Buffer      290
8.4 File Input and Output      293
8.5 String Streams      299
Chapter Summary      302
Defined Terms      302

Part II. Containers and Algorithms      303

Chapter 9. Sequential Containers      305

9.1 Defining a Sequential Container      307
9.2 Iterators andIteratorRanges      311
9.3 Sequence Container Operations      316
9.4 How a vector Grows      330
9.5 Deciding Which Container to Use      333
9.6 strings Revisited      335
9.7 Container Adaptors      348
Chapter Summary      353
Defined Terms      353

Chapter 10. Associative Containers      355

10.1 Preliminaries: the pair Type      356
10.2 Associative Containers      358
10.3 The map Type      360
10.4 The set Type      372
10.5 The multimap and multiset Types      375
10.6 Using Containers: Text-Query Program      379
Chapter Summary      388
Defined Terms      388

Chapter 11. Generic Algorithms      391

11.1 Overview      392
11.2 A First Look at the Algorithms      395
11.3 Revisiting Iterators      405
11.4 Structure of Generic Algorithms      419
11.5 Container-Specific Algorithms      421
Chapter Summary      424
Defined Terms      424

Part III. Classes and Data Abstraction      427

Chapter 12. Classes      429

12.1 Class Definitions and Declarations         430
12.2 The Implicit this Pointer         440
12.3 Class Scope         444
12.4 Constructors         451
12.5 Friends         465
12.6 static Class Members         467
Chapter Summary         473
Defined Terms         473

Chapter 13 Copy Control      475

13.1 The Copy Constructor         476
13.2 The Assignment Operator         482
13.3 The Destructor           484
13.4 A Message-Handling Example       486
13.5 Managing Pointer Members         492
Chapter Summary         502
Defined Terms         502

Chapter 14. Overloaded Operations and Conversions      505

14.1 Defining an Overloaded Operator         506
14.2 Input andOutputOperators         513
14.3 Arithmetic and Relational Operators         517
14.4 Assignment Operators        520
14.5 Subscript Operator         522
14.6 Member Access Operators         523
14.7 Increment and Decrement Operators        526
14.8 Call Operator and Function Objects         530
14.9 Conversions and Class Types         535
Chapter Summary         . 552
Defined Terms         552

Part IV. Object-Oriented and Generic Programming      555

Chapter 15. Object-Oriented Programming      557

15.1 OOP: An Overview         558
15.2 Defining Base and Derived Classes         560
15.3 Conversions and Inheritance         577
15.4 Constructors and Copy Control         580
15.5 Class Scope under Inheritance         590
15.6 Pure Virtual Functions         595
15.7 Containers and Inheritance         597
15.8 Handle Classes and Inheritance         598
15.9 Text Queries Revisited         607
Chapter Summary         621
Defined Terms         621

Chapter 16. Templates and Generic Programming      623

16.1 Template Definitions         624
16.2 Instantiation           636
16.3 Template Compilation Models       643
16.4 Class Template Members         647
16.5 A Generic Handle Class         666
16.6 Template Specializations         671
16.7 Overloading and Function Templates         679
Chapter Summary        683
Defined Terms         683

Part V. Advanced Topics      685

Chapter 17. Tools for Large Programs      687

17.1 Exception Handling         688
17.2 Namespaces           712
17.3 Multiple and Virtual Inheritance       731
Chapter Summary         748
Defined Terms         748

Chapter 18. Specialized Tools and Techniques      753

18.1 Optimizing Memory Allocation         754
18.2 Run-Time Type Identification         772
18.3 Pointer to Class Member         780
18.4 Nested Classes         786
18.5 Union: A Space-Saving Class         792
18.6 Local Classes         796
18.7 Inherently Nonportable Features         797
Chapter Summary         805
Defined Terms         805

Appendix A. The Library      809

A.1 Library Names and Headers         810
A.2 A Brief Tour of the Algorithms         811
A.3 The IO Library Revisited         825

Index      843

Product Details

ISBN:
9780201824704
Author:
Lippman, Stanley B.
Author:
Lajoie, Jose
Author:
E
Author:
Moo, Barbara E.
Author:
Lippman, Stanley B.
Author:
Lajoie, Jos
Author:
Lajoie, Josee
Publisher:
Addison-Wesley Professional
Location:
Reading, Mass. :
Subject:
Programming Languages - C
Subject:
Programming Languages - General
Subject:
C (computer program language)
Subject:
C plus plus (computer program language)
Copyright:
Edition Number:
3
Edition Description:
Trade paper
Publication Date:
20050214
Binding:
Paperback
Grade Level:
Professional and scholarly
Language:
English
Illustrations:
Yes
Pages:
912
Dimensions:
9.2 x 7.08 x 1.7 in 1302 gr

Other books you might like

  1. $34.95 New Trade Paper add to wish list

    C++ Primer Answer Book

    Clovis Tondo
  2. $24.71 Used Hardcover add to wish list

    Compilers

    Alfred V Aho
  3. $47.25 New Trade Paper add to wish list
  4. $42.00 Used Hardcover add to wish list
  5. $79.99 New Hardcover add to wish list
  6. $40.25 New Trade Paper add to wish list

Related Aisles

  • back to top

Powell's City of Books is an independent bookstore in Portland, Oregon, that fills a whole city block with more than a million new, used, and out of print books. Shop those shelves — plus literally millions more books, DVDs, and eBooks — here at Powells.com.