Log In
Or create an account -> 
Imperial Library
  • Home
  • About
  • News
  • Upload
  • Forum
  • Help
  • Login/SignUp

Index
Cover Contents Part I: Introduction to Professional C++
Chapter 1: A Crash Course in C++
The Basics of C++ Diving Deeper into C++ C++ as an Object-Oriented Language The Standard Library Your First Useful C++ Program Summary
Chapter 2: Designing Professional C++ Programs
What Is Programming Design? The Importance of Programming Design What’s Different about C++ Design? Two Rules for C++ Design Reusing Code Designing with Patterns and Techniques Designing a Chess Program Summary
Chapter 3: Designing with Objects
Am I Thinking Procedurally? The Object-Oriented Philosophy Living in a World of Objects Object Relationships Abstraction Summary
Chapter 4: Designing for Reuse
The Reuse Philosophy How to Design Reusable Code Summary
Chapter 5: Coding with Style
The Importance of Looking Good Documenting Your Code Decomposition Naming Using Language Features with Style Formatting Stylistic Challenges Summary
Part II: C++ Coding the Professional Way
Chapter 6: Gaining Proficiency With Classes and Objects
Introducing the Spreadsheet Example Writing Classes Object Life Cycles Summary
Chapter 7: Mastering Classes and Objects
Dynamic Memory Allocation in Objects Different Kinds of Data Members More about Methods Nested Classes Enumerated Types Inside Classes Friends Operator Overloading Building Stable Interfaces Summary
Chapter 8: Discovering Inheritance Techniques
Building Classes with Inheritance Inheritance for Reuse Respect Your Parents Inheritance for Polymorphism Multiple Inheritance Interesting and Obscure Inheritance Issues Summary
Chapter 9: Understanding C++ Quirks and Oddities
References Keyword Confusion Types and Casts Scope Resolution C++11 Header Files C Utilities Summary
Chapter 10: Handling Errors
Errors and Exceptions Exception Mechanics Exceptions and Polymorphism Stack Unwinding and Cleanup Common Error-Handling Issues Putting It All Together Summary
Chapter 11: Delving into the Standard Library
Coding Principles Overview of the C++ Standard Library Summary
Chapter 12: Understanding Containers and Iterators
Containers Overview Sequential Containers Container Adapters Associative Containers Unordered Associative Containers/Hash Tables Other Containers Summary
Chapter 13: Mastering STL Algorithms
Overview of Algorithms Lambda Expressions Function Objects Algorithm Details Algorithms Example: Auditing Voter Registrations Summary
Chapter 14: Using Strings and Regular Expressions
Dynamic Strings Localization Regular Expressions Summary
Chapter 15: Demystifying C++ I/O
Using Streams String Streams File Streams Bidirectional I/O Summary
Chapter 16: Additional Library Utilities
std::function Ratios The Chrono Library Random Number Generation Tuples Summary
Chapter 17: Customizing and Extending the STL
Allocators Iterator Adapters Extending the STL Summary
Part III: Mastering Advanced Features of C++
Chapter 18: Overloading C++ Operators
Overview of Operator Overloading Overloading the Arithmetic Operators Overloading the Bitwise and Binary Logical Operators Overloading the Insertion and Extraction Operators Overloading the Subscripting Operator Overloading the Function Call Operator Overloading the Dereferencing Operators Writing Conversion Operators Overloading the Memory Allocation and Deallocation Operators Summary
Chapter 19: Writing Generic Code with Templates
Overview of Templates Class Templates Function Templates Summary
Chapter 20: Advanced Templates
More about Template Parameters Template Class Partial Specialization Emulating Function Partial Specialization with Overloading Template Recursion Type Inference Variadic Templates Metaprogramming Summary
Chapter 21: Effective Memory Management
Working with Dynamic Memory Array-Pointer Duality Low-Level Memory Operations Smart Pointers Common Memory Pitfalls Summary
Chapter 22: Multithreaded Programming with C++
Introduction Atomic Operations Library Threads Mutual Exclusion Condition Variables Futures Example: Multithreaded Logger Class Thread Pools Threading Design and Best Practices Summary
Part IV: C++ Software Engineering
Chapter 23: Maximizing Software Engineering Methods
The Need for Process Software Life Cycle Models Software Engineering Methodologies Building Your Own Process and Methodology Source Code Control Summary
Chapter 24: Writing Efficient C++
Overview of Performance and Efficiency Language-Level Efficiency Design-Level Efficiency Profiling Summary
Chapter 25: Developing Cross-Platform and Cross-Language Applications
Cross-Platform Development Cross-Language Development Summary
Chapter 26: Becoming Adept at Testing
Quality Control Unit Testing Higher-Level Testing Tips for Successful Testing Summary
Chapter 27: Conquering Debugging
The Fundamental Law of Debugging Bug Taxonomies Avoiding Bugs Planning for Bugs Debugging Techniques Summary
Chapter 28: Incorporating Design Techniques and Frameworks
“I Can Never Remember How to . . .” There Must Be a Better Way Object-Oriented Frameworks Summary
Chapter 29: Applying Design Patterns
The Iterator Pattern The Singleton Pattern The Factory Pattern The Proxy Pattern The Adapter Pattern The Decorator Pattern The Chain of Responsibility Pattern The Observer Pattern Summary
Appendix A: C++ Interviews Appendix B: Annotated Bibliography Appendix C: Standard Library Header Files Introduction
  • ← Prev
  • Back
  • Next →
  • ← Prev
  • Back
  • Next →

Chief Librarian: Las Zenow <zenow@riseup.net>
Fork the source code from gitlab
.

This is a mirror of the Tor onion service:
http://kx5thpx2olielkihfyo4jgjqfb7zx7wxr3sd4xzt26ochei4m6f7tayd.onion