My Account Log in

1 option

C++ : the complete reference / Herbert Schildt.

Van Pelt Library QA76.73.C153 S33 2003
Loading location information...

Available This item is available for access.

Log in to request item
Format:
Book
Author/Creator:
Schildt, Herbert.
Language:
English
Subjects (All):
C++ (Computer program language).
Physical Description:
xxxii, 1023 pages : illustrations ; 24 cm
Edition:
4a. edition.
Place of Publication:
New York : McGraw-Hill, [2003]
Summary:
Master programmer and best-selling author Herb Schildt has updated and expanded his classic reference to C++. Using expertly crafted explanations, insider tips, and hundreds of examples, Schildt explains and demonstrates every aspect of C++. Inside you'll find details on the entire C++ language, including its keywords, operators, preprocessor directives, and libraries. There is even a synopsis of the extended keywords used for .NET programming. Of course, everything is presented in the clear, crisp, uncompromising style that has made Herb Schildt the choice of millions. Whether you're a beginning programmer or a seasoned pro, the answers to all your C++ questions can be found in this lasting resource.
Contents:
Part I The Foundation of C++: The C Subset
The Origins and History of C 4
C Is a Middle-Level Language 5
C Is a Structured Language 6
C Is a Programmer's Language 8
The Form of a C Program 9
The Library and Linking 10
Separate Compilation 12
Understanding the .C and .CPP File Extensions 12
2 Expressions 13
The Five Basic Data Types 14
Modifying the Basic Types 15
Identifier Names 16
Variables 17
The const and volatile Qualifiers 23
Storage Class Specifiers 25
Variable Initializations 31
Constants 32
Operators 35
Expressions 52
3 Statements 57
True and False in C and C++ 58
Selection Statements 59
Iteration Statements 70
Declaring Variables Within Selection and Iteration Statements 81
Jump Statements 82
Expression Statements 88
Block Statements 88
4 Arrays and Null-Terminated Strings 89
Single-Dimension Arrays 90
Generating a Pointer to an Array 92
Passing Single-Dimension Arrays to Functions 92
Null-Terminated Strings 94
Two-Dimensional Arrays 96
Multidimensional Arrays 101
Indexing Pointers 102
Array Initialization 105
5 Pointers 113
Pointer Variables 115
The Pointer Operators 115
Pointer Expressions 116
Pointers and Arrays 121
Multiple Indirection 123
Initializing Pointers 125
Pointers to Functions 126
C's Dynamic Allocation Functions 129
Problems with Pointers 131
6 Functions 137
The General Form of a Function 138
Scope Rules of Functions 138
Function Arguments 139
argc and argv
Arguments to main() 144
The return Statement 147
Recursion 153
Function Prototypes 155
Declaring Variable-Length Parameter Lists 158
Old-Style Versus Modern FunctionParameter Declarations 158
7 Structures, Unions, Enumerations, and User-Defined Types 161
Structures 162
Arrays of Structures 166
Passing Structures to Functions 167
Structure Pointers 169
Arrays and Structures Within Structures 173
Bit-Fields 174
Unions 176
Enumerations 180
Using sizeof to Ensure Portability 183
typedef 184
8 C-Style Console I/O 187
An Important Application Note 188
Reading and Writing Characters 189
Reading and Writing Strings 192
Formatted Console I/O 195
printf() 195
scanf() 203
9 File I/O 211
C Versus C++ File I/O 212
Streams and Files 212
Streams 212
Files 213
File System Basics 214
fread() and fwrite() 227
fseek() and Random-Access I/O 229
fprintf() and fscanf() 230
The Standard Streams 232
10 The Preprocessor and Comments 237
The Preprocessor 238
#define 238
#error 241
#include 242
Conditional Compilation Directives 242
#undef 246
Using defined 247
#line 248
#pragma 248
The # and ## Preprocessor Operators 248
Predefined Macro Names 250
Single-Line Comments 252
Part II C++
The Origins of C++ 256
What Is Object-Oriented Programming? 257
Some C++ Fundamentals 259
Old-Style vs. Modern C++ 267
Introducing C++ Classes 270
Function Overloading 275
Operator Overloading 278
Inheritance 278
Constructors and Destructors 283
The C++ Keywords 287
The General Form of a C++ Program 288
12 Classes and Objects 289
Structures and Classes Are Related 293
Unions and Classes Are Related 295
Friend Functions 297
Friend Classes 302
Inline Functions 303
Parameterized Constructors 307
Static Class Members 310
When Constructors and Destructors Are Executed 317
The Scope Resolution Operator 319
Nested Classes 319
Local Classes 320
Passing Objects to Functions 320
Returning Objects 323
Object Assignment 324
13 Arrays, Pointers, References, and the Dynamic Allocation Operators 325
Arrays of Objects 326
Pointers to Objects 329
Type Checking C++ Pointers 332
The this Pointer 332
Pointers to Derived Types 334
Pointers to Class Members 337
A Matter of Style 347
C++'s Dynamic Allocation Operators 347
14 Function Overloading, Copy Constructors, and Default Arguments 359
Function Overloading 360
Overloading Constructors 362
Copy Constructors 366
Finding the Address of an Overloaded Function 370
The overload Anachronism 371
Default Function Arguments 371
Function Overloading and Ambiguity 378
15 Operator Overloading 383
Creating a Member Operator Function 384
Operator Overloading Using a Friend Function 391
Overloading new and delete 398
Overloading Some Special Operators 407
Overloading the Comma Operator 414
16 Inheritance 417
Base-Class Access Control 418
Inheritance and protected Members 420
Inheriting Multiple Base Classes 425
Constructors, Destructors, and Inheritance 426
Granting Access 434
Virtual Base Classes 437
17 Virtual Functions and Polymorphism 443
Virtual Functions 444
The Virtual Attribute Is Inherited 448
Virtual Functions Are Hierarchical 450
Pure Virtual Functions 453
Using Virtual Functions 455
Early vs. Late Binding 458
18 Templates 459
Generic Functions 460
Applying Generic Functions 468
Generic Classes 472
The typename and export Keywords 484
The Power of Templates 485
19 Exception Handling 487
Exception Handling Fundamentals 488
Handling Derived-Class Exceptions 497
Exception Handling Options 498
Understanding terminate() and unexpected() 503
The uncaught_exception() Function 505
The exception and bad_exception Classes 506
Applying Exception Handling 506
20 The C++ I/O System Basics 509
Old vs. Modern C++ I/O 510
C++ Streams 511
The C++ Stream Classes 511
Formatted I/O 513
Overloading [double left angle bracket]and[double right angle bracket] 526
21 C++ File I/O 539
[left angle bracket]fstream[right angle bracket] and the File Classes 540
Opening and Closing a File 540
Reading and Writing Text Files 543
Unformatted and Binary I/O 545
More get() Functions 551
getline() 551
Detecting EOF 553
The ignore() Function 555
peek() and putback() 556
flush() 556
Random Access 557
I/O Status 561
Customized I/O and Files 563
22 Run-Time Type ID and the Casting Operators 567
Run-Time Type Identification (RTTI) 568
The Casting Operators 578
dynamic_cast 578
23 Namespaces, Conversion Functions, and Other Advanced Topics 591
Namespaces 592
The std Namespace 601
Creating Conversion Functions 603
const Member Functions and mutable 607
Volatile Member Functions 609
Explicit Constructors 610
The Member Initialization Syntax 611
Using the asm Keyword 616
Linkage Specification 617
Array-Based I/O 618
Summarizing the Differences Between C and C++ 626
24 Introducing the Standard Template Library 629
An Overview of the STL 630
The Container Classes 633
General Theory of Operation 634
Vectors 635
Lists 645
Algorithms 664
Using Function Objects 675
The string Class 683
Final Thoughts on the STL 695
Part III The Standard Function Library
25 The C-Based I/O Functions 699
26 The String and Character Functions 723
27 The Mathematical Functions 737
28 Time, Date, and Localization Functions 747
29 The Dynamic Allocation Functions 757
30 Utility Functions 761
31 The Wide-Character Functions 775
The Wide-Character Classification Functions 776
The Wide-Character I/O Functions 779
The Wide-Character String Functions 779
Wide-Character String Conversion Functions 779
Wide-Character Array Functions 782
Multibyte/Wide-Character Conversion Functions 783
Part IV The Standard C++ Class Library
32 The Standard C++ I/O Classes 787
The I/O Classes 788
The I/O Headers 790
The Format Flags and I/O Manipulators 791
Several Data Types 793
Overload [double left angle bracket]and[double right angle bracket] Operators 794
The General-Purpose I/O Functions 795
33 The STL Container Classes 811
The
Container Classes 812
34 The STL Algorithms 839
35 STL Iterators, Allocators, and Function Objects 861
Iterators 862
Function Objects 872
Allocators 879
36 The String Class 881
The basic_string Class 882
The char_traits Class 894
37 The Numeric Classes 897
The complex Class 898
The valarray Class 902
The Numeric Algorithms 920
38 Exception Handling and Miscellaneous Classes 925
Exceptions 926
auto_ptr 928
The pair Class 930
Localization 931
Other Classes of Interest 931
Part V Applying C++
39 Integrating New Classes: A Custom String Class 935
The StrType Class 936
The Constructors and Destructors 938
I/O on Strings 939
The Assignment Functions 941
Concatenation 942
Substring Subtraction 945
The Relational Operators 947
Miscellaneous String Functions 948
The Entire StrType Class 949
Using the StrType Class 958
Creating and Integrating New Types in General 961
A Challenge 961
40 Parsing Expressions 963
Expressions 964
Parsing Expressions: The Problem 965
Parsing an Expression 966
The Parser Class 968
Dissecting an Expression 969
A Simple Expression Parser 971
Adding Variables to the Parser 978
Syntax Checking in a Recursive-Descent Parser 988
Building a Generic Parser 989
A The .NET Managed Extensions to C++ 999
The .NET Keyword Extensions 1000
Preprocessor Extensions 1002
The attribute Attribute 1003
Compiling Managed C++ 1003
B C++ and the Robotics Age 1005.
Notes:
Incluye índice.
ISBN:
0072226803
OCLC:
56059988

The Penn Libraries is committed to describing library materials using current, accurate, and responsible language. If you discover outdated or inaccurate language, please fill out this feedback form to report it and suggest alternative language.

Find

Home Release notes

My Account

Shelf Request an item Bookmarks Fines and fees Settings

Guides

Using the Find catalog Using Articles+ Using your account