The online computer book shop for UK & Europe                                   

   Books Home | About Us | Index | Next Record | Browse

 
  

Tel: 0121 706 6000 

Static Book Details Page - Computer Manuals Website

 Practical C++ Programming (2nd Revised edition)
  

  Practical C++ Programming (2nd Revised edition) by Steve Oualline

  • Published by: O'Reilly Media, Inc, USA
  • Author: Steve Oualline
  • Page Count: 574
  • Group: Programming languages
  • ISBN: 0596004192/9780596004194
  • Published: Jan 2003

Our Price: 23.94
Discount: 16%
RRP: 28.50 

For Latest Pricing and Availability Click Here
 

The online computer book shop for UK & Europe

Book store with some thing for everyone

Book Information and Description:

Practical C++ Programming (2nd Revised edition)
This second edition of Practical C++ Programming is a complete introduction to the C++ language for programmers who are learning C++. Reflecting the latest changes to the C++ standard, this new edition takes a useful down-to-earth approach, placing a strong emphasis on how to design clean, elegant code. In short, to-the-point chapters, all aspects of programming are covered including style, software engineering, programming design, object-oriented design, and debugging. It also covers common mistakes and how to find (and avoid) them. End of chapter exercises help you ensure you've mastered the material. The book covers: C++ Syntax; coding standards and style; creation and use of object classes; templates; debugging and optimization; use of the C++ preprocessor; and file input/output. In short, to-the-point chapters, Practical C++ Programming covers all aspects of programming including style, software engineering, programming design, object-oriented design, and debugging. It also covers common mistakes and how to find (and avoid) them. End of chapter exercises help you ensure you've mastered the material.


Contents:

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


Brief Description:

A complete introduction to C++ is provided for the beginning programmer in this guide. It is also suitable for C programmers migrating to C++, emphasising a practical approach including how to understand other people's code.