Exceptional C++: 47 Engineering Puzzles, Programming Problems, and Solutions

Series
Addison-Wesley
Author
Herb Sutter / Herb Sutter  
Publisher
Addison-Wesley
Cover
Softcover
Edition
1
Language
English
Total pages
240
Pub.-date
November 1999
ISBN13
9780201615623
ISBN
0201615622
Related Titles


Product detail

Product Price CHF Available  
9780201615623
Exceptional C++: 47 Engineering Puzzles, Programming Problems, and Solutions
60.50 approx. 7-9 days

Alternative title

Product Edition Date Price CHF Available
9780321321954
Exceptional C++
2 February 2025 64.90

Table of Contents

GENERIC PROGRAMMING AND THE C++ STANDARD LIBRARY.

Item 1: Iterators.

Item 2: Case-Insensitive Strings-Part 1.

Item 3: Case-Insensitive Strings-Part 2.

Item 4: Maximally Reusable Generic Containers-Part 1.

Item 5: Maximally Reusable Generic Containers-Part 2.

Item 6: Temporary Objects.

Item 7: Using the Standard Library (or, Temporaries Revisited).

EXCEPTION-SAFETY ISSUES AND TECHNIQUES.

Item 8: Writing Exception-Safe Code-Part 1.

Item 9: Writing Exception-Safe Code-Part 2.

Item 10: Writing Exception-Safe Code-Part 3.

Item 11: Writing Exception-Safe Code-Part 4.

Item 12: Writing Exception-Safe Code-Part 5.

Item 13: Writing Exception-Safe Code-Part 6.

Item 14: Writing Exception-Safe Code-Part 7.

Item 15: Writing Exception-Safe Code-Part 8.

Item 16: Writing Exception-Safe Code-Part 9.

Item 17: Writing Exception-Safe Code-Part 10.

Item 18: Code Complexity-Part 1.

Item 19: Code Complexity-Part 2.

CLASS DESIGN AND INHERITANCE.

Item 20: Class Mechanics.

Item 21: Overriding Virtual Functions.

Item 22: Class Relationships-Part 1.

Item 23: Class Relationships-Part 2.

Item 24: Uses and Abuses of Inheritance.

Item 25: Object-Oriented Programming.

COMPILER FIREWALLS AND THE PIMPL IDIOM.

Item 26: Minimizing Compile-time Dependencies-Part 1.

Item 27: Minimizing Compile-time Dependencies-Part 2.

Item 28: Minimizing Compile-time Dependencies-Part 3.

Item 29: Compilation Firewalls.

Item 30: The “Fast Pimpl” Idiom.

NAME LOOKUP, NAMESPACES, AND THE INTERFACE PRINCIPLE.

Item 31: Name Lookup and the Interface Principle-Part 1.

Item 32: Name Lookup and the Interface Principle-Part 2.

Item 33: Name Lookup and the Interface Principle-Part 3.

Item 34: Name Lookup and the Interface Principle-Part 4.

MEMORY MANAGEMENT.

Item 35: Memory Management-Part 1.

Item 36: Memory Management-Part 2.

Item 37: auto_ptr.

TRAPS, PITFALLS, AND ANIT-IDIOMS.

Item 38: Object Identity.

Item 39: Automatic Conversions.

Item 40: Object Lifetimes-Part 1.

Item 41: Object Lifetimes-Part 2.

MISCELLANEOUS TOPICS.

Item 42: Variable Initialization—Or Is It?

Item 43: Const-Correctness.

Item 44: Casts.

Item 45: bool.

Item 46: Forwarding Functions.

Item 47: Control Flow.

Afterword.

Bibliography.

Index. 0201615622T04062001

Back Cover

Exceptional C++ shows by example how to go about sound software engineering in standard C++. Do you enjoy solving thorny C++ problems and puzzles? Do you relish writing robust and extensible code? Then take a few minutes and challenge yourself with some tough C++ design and programming problems.

The puzzles and problems in Exceptional C++ not only entertain, they will help you hone your skills to become the sharpest C++ programmer you can be. Many of these problems are culled from the famous Guru of the Week feature of the Internet newsgroup comp.lang.c++.moderated, expanded and updated to conform to the official ISO/ANSI C++ Standard.

Each problem is rated according to difficulty and is designed to illustrate subtle programming mistakes or design considerations. After you've had a chance to attempt a solution yourself, the book then dissects the code, illustrates what went wrong, and shows how the problem can be fixed. Covering a broad range of C++ topics, the problems and solutions address critical issues such as:

  • Generic programming and how to write reusable templates
  • Exception safety issues and techniques
  • Robust class design and inheritance
  • Compiler firewalls and the Pimpl Idiom
  • Name lookup, namespaces, and the Interface Principle
  • Memory management issues and techniques
  • Traps, pitfalls, and anti-idioms
  • Optimization

Try your skills against the C++ masters and come away with the insight and experience to create more efficient, effective, robust, and portable C++ code.



0201615622B04062001

Author

Herb Sutter is the author of three highly acclaimed books, Exceptional C++ Style, Exceptional C++, and More Exceptional C++ (Addison-Wesley). He chairs the ISO C++ standards committee, and is contributing editor and columnist for C/C++ Users Journal. As a software architect for Microsoft, Sutter leads the design of C++ language extensions for .NET programming.