EXCEPTIONAL C++: 47 ENGINEERING PUZZLES, PROGRAMMING PROBLEMS, AND SOLUTIONS By Herb Sutter

xceptional 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.

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.


DETAILS  

  • Download
  • By
    Herb Sutter
  • Pages
    240
  • Year
    1999
  • Publisher
    Addison-Wesley Professional
  • Language
    English
  • ISBN
    978-0201615623
  • File Size
    10.8 MB
  • File Format
    PDF
Previous
Next Post »