shopping cart
Powell's 2010 Puddly Awards
Call us:  800-878-7323 HELP
McAfee SECURE helps keep you safe from identity theft, credit card fraud, spyware, spam, viruses and online scams.
Guests | December 29, 2009

Alex Lemon: IMG Everyone Called Me "Happy"



I have nystagmus and diplopia and chronic pain and ataxia, and I can tell that I'm nervous and excited that my new book is out today because all of... Continue »
  1. $17.50 Sale Hardcover add to wish list

    Happy: A Memoir

    Alex Lemon

More Effective C++ (Addison-Wesley Professional Computing)

by Scott Meyers

More Effective C++ (Addison-Wesley Professional Computing) Cover

Synopses & Reviews

Publisher Comments:

Praise for Scott Meyers’ first book, Effective C++:
“I heartily recommend Effective C++ to anyone who aspires to mastery of C++ at the intermediate level or above.”

– The C/C++ User’s Journal

From the author of the indispensable Effective C++, here are 35 new ways to improve your programs and designs. Drawing on years of experience, Meyers explains how to write software that is more effective: more efficient, more robust, more consistent, more portable, and more reusable. In short, how to write C++ software that’s just plain better.

More Effective C++ includes:

  • Proven methods for improving program efficiency, including incisive examinations of the time/space costs of C++ language features

  • Comprehensive descriptions of advanced techniques used by C++ experts, including placement new, virtual constructors, smart pointers, reference counting, proxy classes, and double-dispatching

  • Examples of the profound impact of exception handling on the structure and behavior of C++ classes and functions

  • Practical treatments of new language features, including bool, mutable, explicit, namespaces, member templates, the Standard Template Library, and more. If your compilers don’t yet support these features, Meyers shows you how to get the job done without them.

More Effective C++ is filled with pragmatic, down-to-earth advice you’ll use every day. Like Effective C++ before it, More Effective C++ is essential reading for anyone working with C++.

Book News Annotation:

For programmers at the intermediate level and above. This sequel to the author's Effective C++ provides methods for improving program efficiency. Coverage includes examinations of the time/space costs of C++ language features; descriptions of advanced techniques (placement new, virtual constructors, smart pointers, reference county proxy classes, and double-dispatching); examples of the impact of exception handling; and treatment of new language features (e.g. bool, mutable, explicit, namespaces, member templates).
Annotation c. Book News, Inc., Portland, OR (booknews.com)

Synopsis:

Contains material on recent additions to the emerging AMSI/ISO language standard, including runtime type identification, namespaces and enhanced memory management features. The text focuses on how to write efficient C++ code and includes techniques for solving common problems with code examples.

About the Author

Scott Meyers is one of the world's foremost authorities on C++, providing training and consulting services to clients worldwide. He is the author of the best-selling Effective C++ series of books (Effective C++, More Effective C++, and Effective STL) and of the innovative Effective C++ CD. He is consulting editor for Addison Wesley's Effective Software Development Series and serves on the Advisory Board for The C++ Source (http://www.artima.com/cppsource). He holds a Ph.D. in Computer Science from Brown University. His web site is http://www.aristeia.com.

Table of Contents

Acknowledgments  xi

Introduction  1

Basics  9

Item 1: Distinguish between pointers and references.  9

Item 2: Prefer C++-style casts.  12

Item 3: Never treat arrays polymorphically.  16

Item 4: Avoid gratuitous default constructors.  19

Operators  24

Item 5: Be wary of user-defined conversion functions.  24

Item 6: Distinguish between prefix and postfix forms of increment and decrement operators.  31

Item 7: Never overload andand, , or ,.  35

Item 8: Understand the different meanings of new and delete.  38

Exceptions  44

Item 9: Use destructors to prevent resource leaks.  45

Item 10: Prevent resource leaks in constructors.  50

Item 11: Prevent exceptions from leaving destructors.  58

Item 12: Understand how throwing an exception differs from passing a parameter or calling a virtual function.  61

Item 13: Catch exceptions by reference.  68

Item 14: Use exception specifications judiciously.  72

Item 15: Understand the costs of exception handling.  78

Efficiency  81

Item 16: Remember the 80-20 rule.  82

Item 17: Consider using lazy evaluation.  85

Item 18: Amortize the cost of expected computations.  93

Item 19: Understand the origin of temporary objects.  98

Item 20: Facilitate the return value optimization.  101

Item 21: Overload to avoid implicit type conversions.  105

Item 22: Consider using op= instead of stand-alone op.  107

Item 23: Consider alternative libraries.  110

Item 24: Understand the costs of virtual functions, multiple inheritance, virtual base classes, and RTTI.  113

Techniques  123

Item 25: Virtualizing constructors and non-member functions.  123

Item 26: Limiting the number of objects of a class.  130

Item 27: Requiring or prohibiting heap-based objects.  145

Item 28: Smart pointers.  159

Item 29: Reference counting.  183

Item 30: Proxy classes.  213

Item 31: Making functions virtual with respect to more than one object.  228

Miscellany  252

Item 32: Program in the future tense.  252

Item 33: Make non-leaf classes abstract.  258

Item 34: Understand how to combine C++ and C in the same program.  270

Item 35: Familiarize yourself with the language standard.  277

Recommended Reading  285

An auto_ptr Implementation  291

General Index  295

Index of Example Classes, Functions, and Templates  313

Product Details

ISBN:
9780201633719
Author:
Meyers, Scott
Publisher:
Addison-Wesley Professional
Location:
Reading, Mass. :
Subject:
Programming Languages - C
Subject:
Programming Languages - General
Subject:
C (computer program language)
Subject:
Technology
Subject:
Data processing
Subject:
C plus plus (computer program language)
Subject:
C
Copyright:
Edition Description:
Paperback
Series:
Addison-Wesley professional computing series
Series Volume:
155
Publication Date:
December 1995
Binding:
Paperback
Grade Level:
Professional and scholarly
Language:
English
Illustrations:
Yes
Pages:
336
Dimensions:
9.34x7.26x.85 in. 1.48 lbs.

Other books you might like

  1. $42.00 Used Hardcover add to wish list
  2. $47.25 New Trade Paper add to wish list
  3. $25.00 Used Hardcover add to wish list
  4. $44.99 New Trade Paper add to wish list
  5. $78.50 New Hardcover add to wish list
  6. $41.00 Used 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.