计算机书籍控

Practical C++ Programming

目录


Preface  Part I. The Basics  1. What Is C++?  A Brief History of C++  C++ Organization  How to Learn C++  2. The Basics of Program Writing  Programs from Conception to Execution  Creating a Real Program  Getting Help in Unix  Getting Help in an IDE Programming Exercises  3. Style  Comments  C++ Code  Naming Style  Coding Religion  Indentation and Code Format  Clarity Simplicity  Consistency and Organization  Further Reading Summary  4. Basic Declarations and Expressions  Basic Program Structure  Simple Expressions  The std::cout Output Object Variables and Storage  Variable Declarations  Assignment Statements  Floating-Point Numbers  Floating-Point Divide Versus Integer Divide  Characters  Wide Characters  Boolean Type Programming Exercises  Answers to Chapter Questions  5. Arrays, Qualifiers, and Reading Numbers  Arrays  Strings  Reading Data Initializing Variables  Multidimensional Arrays  C-Style Strings Types of Integers  Types of Floats  Constant and Reference Declarations  Qualifiers  Hexadecimal and Octal Constants Operators for Performing Shortcuts  Side Effects  Programming Exercises  Answers to Chapter Questions  6. Decision and Control Statements  if Statement  else Statement  How Not to Use std::strcmp  Looping Statements  while Statement  break Statement continue Statement  The Assignment Anywhere Side Effect  Programming Exercises  Answers to Chapter Questions  7. The Programming Process  Setting Up Your Work Area  The Specification Code Design  The Prototype  The Makefile  Testing  Debugging Maintenance  Revisions  Electronic Archaeology  Mark Up the Program  Use the Debugger  Use the Text Editor as a Browser Add Comments  Programming Exercises  Part II. Simple Programming 8. More Control Statements  for Statement  switch Statement switch, break, and continue  Programming Exercises  Answers to Chapter Questions  9. Variable Scope and Functions  Scope and Storage Class  Namespaces  Functions  Summary of Parameter Types Recursion  Structured Programming Basics  Real-World Programming Programming Exercises  Answers to Chapter Questions  10. The C++ Preprocessor  define Statement  Conditional Compilation include Files  Parameterized Macros  Advanced Features Summary  Programming Exercises  Answers to Chapter Questions 11. Bit Operations  Bit Operators  The AND Operator (&)  Bitwise OR (|)  The Bitwise Exclusive OR (^)  The Ones Complement Operator (NOT) (~)  The Left and Right Shift Operators (>)  Setting, Clearing, and Testing Bits  Bitmapped Graphics  Programming Exercises  Answers to Chapter Questions  Part III. Advanced Types and Classes  12. Advanced Types  Structures  Unions  typedef  enum Type  Bit Members or Packed Structures  Arrays of Structures Programming Exercises  Answers to Chapter Questions  13. Simple Classes  Stacks  Improved Stack  Using a Class  Introduction to Constructors and Destructors  Automatically Generated Member Functions  Shortcuts  Style  Structures Versus Classes  Programming Exercises  14. More on Classes  Friends  Constant Functions  Constant Members  Static Member Variables  Static Member Functions  The Meaning of static  Programming Exercises 15. Simple Pointers  const Pointers  Pointers and Printing Pointers and Arrays  The reinterpret_cast  Pointers and Structures Command-Line Arguments  Programming Exercises  Answers to Chapter Questions  Part IV. Advanced Programming Concepts  16. File Input/Output  C++ File I/O  Conversion Routines  Binary and ASCII Files  The End-of-Line Puzzle  Binary I/O  Buffering Problems Unbuffered I/O  Designing File Formats  C-Style I/O Routines C-Style Conversion Routines  C-Style Binary I/O  C- Versus C++- Style I/O  Programming Exercises  Answers to Chapter Questions 17. Debugging and Optimization  Code Reviews  Serial Debugging Going Through the Output  Interactive Debuggers  Debugging a Binary Search  Interactive Debugging Tips and Tricks  Runtime Errors  Optimization  How to Optimize  Case Study: Inline Functions Versus Normal Functions  Case Study: Optimizing a Color-Rendering Algorithm  Programming Exercises  Answers to Chapter Questions  18. Operator Overloading  Creating a Simple Fixed-Point Class  Operator Functions  Operator Member Functions  Warts Full Definition of the Fixed-Point Class  Programming Exercises Answers to Chapter Questions  19. Floating Point  Floating-Point Format  Floating Addition/Subtraction  Multiplication and Division  Overflow and Underflow  Roundoff Error  Accuracy Minimizing Roundoff Error  Determining Accuracy  Precision and Speed  Power Series  Programming Exercises  20. Advanced Pointers  Pointers, Structures, and Classes  delete Operator Linked Lists  Ordered Linked Lists  Doubly Linked Lists  Trees Printing a Tree  The Rest of the Program  Data Structures for a Chess Program  Programming Exercises  Answers to Chapter Questions 21. Advanced Classes  Derived Classes  Virtual Functions Virtual Classes  Function Hiding in Derived Classes  Constructors and Destructors in Derived Classes  The dynamic_cast Operator Summary  Programming Exercises  Answers to Chapter Questions Part V. Other Language Features  22. Exceptions  Adding Exceptions to the Stack Class  Exceptions Versus assert  Programming Exercises 23. Modular Programming  Modules  Public and Private  The extern Storage Class  Headers  The Body of the Module  A Program to Use Infinite Arrays  The Makefile for Multiple Files  Using the Infinite Array  Dividing a Task into Modules  Module Design Guidelines  Programming Exercises  24. Templates  What Is a Template?  Templates: The Hard Way  Templates: The C++ Way Function Specialization  Class Templates  Class Specialization Implementation Details  Advanced Features  Summary  Programming Exercises  25. Standard Template Library  STL Basics  Class List-A Set of Students  Creating a Waiting List with the STL List Storing Grades in a STL Map  Putting It All Together  Practical Considerations When Using the STL  Getting More Information Exercises  26. Program Design  Design Goals  Design Factors Design Principles  Coding  Objects  Real-World Design  echniques  Conclusion  27. Putting It All Together  Requirements Code Design  Coding  Functional Description  Testing  Revisions A Final Warning  Program Files  Programming Exercises  28. From C to C++  K&R-Style Functions  struct  malloc and free  Turning Structures into Classes  setjmp and longjmp  Mixing C and C++ Code Summary  Programming Exercise  29. C++’s Dustier Corners  do/while goto  The ? : Construct  The Comma Operator  Overloading the (  ) Operator  Pointers to Members  The asm Statement  The mutable Qualifier  Run Time Type Identification  Trigraphs  Answers to Chapter Questions  30. Programming Adages  General  Design Declarations  switch Statement  Preprocessor  Style  Compiling The Ten Commandments for C++ Programmers  Final Note  Answers to Chapter Questions  Part VI. Appendixes  A. ASCII Table  B. Ranges C. Operator Precedence Rules  D. Computing Sine Using a Power Series E. Resources Index

书籍下载

免费下载 密码:le1q

正版书籍

Practical C++ Programming