• Main Page
  • Table of content
  • Copyright
  • Foreword
  • Preface
    • How to Read This Book
    • How We Got Here: 'GotW' and PeerDirect
    • Acknowledgments
  • Generic Programming and the C++ Standard Library
    • Item 1. Iterators
      • Solution
    • Item 2. Case-Insensitive Strings桺art 1
      • Solution
    • Item 3. Case-Insensitive Strings桺art 2
      • Solution
    • Item 4. Maximally Reusable Generic Containers桺art 1
      • Solution
    • Item 5. Maximally Reusable Generic Containers桺art 2
      • Solution
      • Alternative: The Standard Library Approach
    • Item 6. Temporary Objects
      • Solution
    • Item 7. Using the Standard Library (or, Temporaries Revisited)
      • Solution
    • Exception-Safety Issues and Techniques
      • Item 8. Writing Exception-Safe Code桺art 1
        • Solution
      • Item 9. Writing Exception-Safe Code桺art 2
        • Solution
      • Item 10. Writing Exception-Safe Code桺art 3
        • Solution
      • Item 11. Writing Exception-Safe Code桺art 4
        • Solution
      • Item 12. Writing Exception-Safe Code桺art 5
        • Solution
      • Item 13. Writing Exception-Safe Code桺art 6
        • Solution
      • Item 14. Writing Exception-Safe Code桺art 7
        • Solution
      • Item 15. Writing Exception-Safe Code?Part 8
        • Solution
      • Item 16. Writing Exception-Safe Code桺art 9
        • Solution
      • Item 17. Writing Exception-Safe Code桺art 10
        • Solution
      • Item 18. Code Complexity桺art 1
        • Solution
      • Item 19. Code Complexity桺art 2
        • Solution
      • Class Design and Inheritance
        • Item 20. Class Mechanics
          • Solution
        • Item 21. Overriding Virtual Functions
          • Solution
        • Item 22. Class Relationships桺art 1
          • Solution
        • Item 23. Class Relationships桺art 2
          • Solution
        • Item 24. Uses and Abuses of Inheritance
          • Solution
        • Item 25. Object-Oriented Programming
          • Solution
        • Compiler Firewalls and the Pimpl Idiom
          • Item 26. Minimizing Compile-time Dependencies桺art 1
            • Solution
          • Item 27. Minimizing Compile-time Dependencies桺art 2
            • Solution
          • Item 28. Minimizing Compile-time Dependencies桺art 3
            • Solution
          • Item 29. Compilation Firewalls
            • Solution
          • Item 30. The 'Fast Pimpl' Idiom
            • Solution
          • Name Lookup, Namespaces, and the Interface Principle
            • Item 31. Name Lookup and the Interface Principle桺art 1
              • Solution
            • Item 32. Name Lookup and the Interface Principle桺art 2
              • Solution
            • Item 33. Name Lookup and the Interface Principle桺art 3
              • Solution
            • Item 34. Name Lookup and the Interface Principle桺art 4
              • Solution
            • Memory Management
              • Item 35. Memory Management桺art 1
                • Solution
              • Item 36. Memory Management桺art 2
                • Solution
              • Item 37. AUTO_PTR
                • Solution
              • Traps, Pitfalls, and Anti-Idioms
                • Item 38. Object Identity
                  • Solution
                • Item 39. Automatic Conversions
                  • Solution
                • Item 40. Object Lifetimes桺art 1
                  • Solution
                • Item 41. Object Lifetimes桺art 2
                  • Solution
                • Miscellaneous Topics
                  • Item 42. Variable Initialization桹r is it?
                    • Solution
                  • Item 43. Const-Correctness
                    • Solution
                  • Item 44. Casts
                    • Solution
                  • Item 45. BOOL
                    • Solution
                  • Item 46. Forwarding Functions
                    • Solution
                  • Item 47. Control Flow
                    • Solution
                  • Afterword
                • Bibliography