ISBN-10: 0072232153

ISBN-13: 9780072232158

Edition: 2nd 2004 (Revised)

Authors: Herbert Schildt

List price: $30.00 Buy it from $2.49
30 day, 100% satisfaction guarantee

If an item you ordered from TextbookRush does not meet your expectations due to an error on our part, simply fill out a return request and then return it by mail within 30 days of ordering it for a full refund of item cost.

Learn more about our returns policy


More code is written in C++ than in any other existing programming language. This guide explains programming fundamentals and gives thorough coverage on all key aspects of C++, including data types, operators, arrays and functions.
New Starting from $23.45
what's this?
Rush Rewards U
Members Receive:
You have reached 400 XP and carrot coins. That is the daily max!
Study Briefs

Limited time offer: Get the first one free! (?)

All the information you need in one place! Each Study Brief is a summary of one specific subject; facts, figures, and explanations to help you learn faster.

Add to cart
Study Briefs
SQL Online content $4.95 $1.99
Add to cart
Study Briefs
MS Excel® 2010 Online content $4.95 $1.99
Add to cart
Study Briefs
MS Word® 2010 Online content $4.95 $1.99
Add to cart
Study Briefs
MS PowerPoint® 2010 Online content $4.95 $1.99
Customers also bought

Book details

List price: $30.00
Edition: 2nd
Copyright year: 2004
Publisher: McGraw-Hill Osborne
Publication date: 12/22/2003
Binding: Paperback
Pages: 576
Size: 7.25" wide x 9.00" long x 1.25" tall
Weight: 1.694
Language: English

Herbert Schildt is a world leading programming author. He is an authority on the C, C++, Java, and C# programming languages, and a master Windows programmer. His programming books have sold more than three million copies worldwide and have been translated into all major foreign languages. He is the author of numerous best sellers including C: The Complete Reference, Java 2: The Complete Reference, Java 2: A Beginner's Guide, C#: A Beginner's Guide, and many more. Schildt holds a master's degree in computer science from the University of Illinois.

C++ Fundamentals
A Brief History of C++
C: The Beginning of the Modern Age of Programming
The Need for C++
C++ Is Born
The Evolution of C++
How C++ Relates to Java and C#
Object-Oriented Programming
A First Simple Program
Entering the Program
Compiling the Program
Run the Program
The First Sample Program Line by Line
Handling Syntax Errors
A Second Simple Program
Using an Operator
Reading Input from the Keyboard
Some Output Options
Another Data Type
Converting Feet to Meters
Two Control Statements
The if Statement
The for Loop
Using Blocks of Code
Semicolons and Positioning
Indentation Practices
Generating a Table of Feet to Meter Conversions
Introducing Functions
The C++ Libraries
The C++ Keywords
Module 1 Mastery Check
Introducing Data Types and Operators
Why Data Types Are Important
The C++ Data Types
Floating-Point Types
The bool Type
Talking to Mars
Hexadecimal and Octal Literals
String Literals
Character Escape Sequences
A Closer Look at Variables
Initializing a Variable
Dynamic Initialization
Arithmetic Operators
Increment and Decrement
Relational and Logical Operators
Construct an XOR Logical Operation
The Assignment Operator
Compound Assignments
Type Conversion in Assignments
Type Conversion in Expressions
Spacing and Parentheses
Compute the Regular Payments on a Loan
Module 2 Mastery Check
Program Control Statements
The if Statement
The Conditional Expression
Nested ifs
The if-else-if Ladder
The switch Statement
Nested switch Statements
Start Building a C++ Help System
The for Loop
Some Variations on the for Loop
Missing Pieces
The Infinite for Loop
Loops with No Body
Declaring Loop Control Variables Inside the for Loop
The while Loop
The do-while Loop
Improve the C++ Help System
Using break to Exit a Loop
Using continue
Finish the C++ Help System
Nested Loops
Using the goto Statement
Module 3 Mastery Check
Arrays, Strings, and Pointers
One-Dimensional Arrays
No Bounds Checking
Two-Dimensional Arrays
Multidimensional Arrays
Sorting an Array
String Fundamentals
Reading a String from the Keyboard
Some String Library Functions
A String Function Example
Using the Null Terminator
Array Initialization
Unsized Array Initializations
Arrays of Strings
What Are Pointers?
The Pointer Operators
The Base Type of a Pointer Is Important
Assigning Values Through a Pointer
Pointer Expressions
Pointer Arithmetic
Pointer Comparisons
Pointers and Arrays
Indexing a Pointer
String Constants
Reversing a String in Place
Arrays of Pointers
The Null Pointer Convention
Multiple Indirection
Module 4 Mastery Check
Introducing Functions
Function Fundamentals
The General Form of a Function
Creating a Function
Using Arguments
Using return
Returning Values
Using Functions in Expressions
Scope Rules
Local Scope
Global Scope
Passing Pointers and Arrays to Functions
Passing a Pointer
Passing an Array
Passing Strings
Returning Pointers
The main() Function
Pass Command-Line Arguments to main()
Passing Numeric Command-Line Arguments
Function Prototypes
Headers Contain Prototypes
The Quicksort
Module 5 Mastery Check
A Closer Look at Functions
Two Approaches to Argument Passing
How C++ Passes Arguments
Using a Pointer to Create a Call-by-Reference
Reference Parameters
Returning References
Independent References
A Few Restrictions When Using References
Function Overloading
Automatic Type Conversions and Overloading
Create Overloaded Output Functions
Default Function Arguments
Default Arguments Versus Overloading
Using Default Arguments Correctly
Function Overloading and Ambiguity
Module 6 Mastery Check
More Data Types and Operators
The const and volatile Qualifiers
Storage Class Specifiers
static Variables
register Variables
Bitwise Operators
The Shift Operators
Create Bitwise Rotation Functions
The ? Operator
The Comma Operator
Multiple Assignments
Compound Assignment
Using sizeof
Precedence Summary
Module 7 Mastery Check
Classes and Objects
Class Fundamentals
The General Form of a Class
Defining a Class and Creating Objects
Adding Member Functions to a Class
Creating a Help Class
Constructors and Destructors
Parameterized Constructors
Adding a Constructor to the Vehicle Class
An Initialization Alternative
Inline Functions
Creating Inline Functions Inside a Class
Creating a Queue Class
Arrays of Objects
Initializing Object Arrays
Pointers to Objects
Object References
Module 8 Mastery Check
A Closer Look at Classes
Overloading Constructors
Assigning Objects
Passing Objects to Functions
Constructors, Destructors, and Passing Objects
Passing Objects by Reference
A Potential Problem When Passing Objects
Returning Objects
Creating and Using a Copy Constructor
Friend Functions
Structures and Unions
The this Keyword
Operator Overloading
Operator Overloading Using Member Functions
Order Matters
Using Member Functions to Overload Unary Operators
Nonmember Operator Functions
Using a Friend to Overload a Unary Operator
Operator Overloading Tips and Restrictions
Creating a Set Class
Module 9 Mastery Check
Inheritance, Virtual Functions, and Polymorphism
Inheritance Fundamentals
Member Access and Inheritance
Base Class Access Control
Using protected Members
Constructors and Inheritance
Calling Base Class Constructors
Extending the Vehicle Class
Creating a Multilevel Hierarchy
Inheriting Multiple Base Classes
When Constructor and Destructor Functions Are Executed
Pointers to Derived Types
References to Derived Types
Virtual Functions and Polymorphism
Virtual Function Fundamentals
Virtual Functions Are Inherited
Why Virtual Functions?
Applying Virtual Functions
Pure Virtual Functions and Abstract Classes
Module 10 Mastery Check
The C++ I/O System
Old vs. Modern C++ I/O
C++ Streams
The C++ Predefined Streams
The C++ Stream Classes
Overloading the I/O Operators
Creating Inserters
Using Friend Functions to Overload Inserters
Overloading Extractors
Formatted I/O
Formatting with the ios Member Functions
Using I/O Manipulators
Creating Your Own Manipulator Functions
File I/O
Opening and Closing a File
Reading and Writing Text Files
Unformatted and Binary I/O
Reading and Writing Blocks of Data
More I/O Functions
More Versions of get()
Detecting EOF
peek() and putback()
A File Comparison Utility
Random Access
Checking I/O Status
Module 11 Mastery Check
Exceptions, Templates, and Other Advanced Topics
Exception Handling
Exception Handling Fundamentals
Using Multiple catch Statements
Catching All Exceptions
Specifying Exceptions Thrown by a Function
Rethrowing an Exception
Generic Functions
A Function with Two Generic Types
Explicitly Overloading a Generic Function
Generic Classes
Explicit Class Specializations
Creating a Generic Queue Class
Dynamic Allocation
Initializing Allocated Memory
Allocating Arrays
Allocating Objects
Namespace Fundamentals
Unnamed Namespaces
The std Namespace
static Class Members
static Member Variables
static Member Functions
Runtime Type Identification (RTTI)
The Casting Operators
What Next?
Module 12 Mastery Check
The Preprocessor
Function-Like Macros
Conditional Compilation Directives
#if, #else, #elif, and #endif
#ifdef and #ifndef
Using defined
The # and ## Preprocessor Operators
Predefined Macro Names
Working with an Older C++ Compiler
Two Simple Changes
Free shipping on orders over $35*

*A minimum purchase of $35 is required. Shipping is provided via FedEx SmartPost® and FedEx Express Saver®. Average delivery time is 1 – 5 business days, but is not guaranteed in that timeframe. Also allow 1 - 2 days for processing. Free shipping is eligible only in the continental United States and excludes Hawaii, Alaska and Puerto Rico. FedEx service marks used by permission."Marketplace" orders are not eligible for free or discounted shipping.

Learn more about the TextbookRush Marketplace.