TOC PREV NEXT INDEX

C++: A Dialog


A - B - C - D - E - F - G - H - I - J - K - L - M - N - O - P - Q - R - S - T - U - V - W - X - Y - Z

Index


Symbols
#define preprocessor directive 856
#endif preprocessor directive 856, 863
#ifndef preprocessor directive 856, 863, 865
#include preprocessor directive 122, 130, 304, 343
" " vs. < > 164, 343
&
as "address of" operator 619
as marker for reference argument 350
.cc file extension 73
.cpp file extension 73
.h file extension 73
.hpp file extension 73
// as comment marker 73
<cstring> header file 411
<fstream> header file 346
<iomanip> header file 631
<string.h> header file 411
= vs. == 158
->
defined 461
described 710
Numerics
16 bit register names 48
16 bit register names on a 32 bit machine 50
64 bit register 41
A
access function 505
access specifier 317, 395
private 327, 328, 395, 500
encapsulation and 503
member variables 364
why member variables should be 340, 397
protected 586, 652
defined 565
disadvantages of 600
use of 596
public 317, 327, 395
global variables and 501
why member variables should not be 341
repeating in class declaration 604
scope and 328
algebraic equality vs. assignment statement 75
algorithm
defined 3
aliasing
defined 753
problem 816
defined 754
argument
const reference 445, 890
temporary and 477-483
const string& 480
default 927
defined 857
defined 233
non-const reference 445, 446
passing 234, 890, 908
reference 350, 351, 398, 444, 445, 474, 476, 506, 507
reasons for using 482
to C function 619
value 234, 286, 288, 350, 474, 506
array
defined 489
exceeding bounds of 495
initialization list 826
defined 754
name translated to address 495
used in homegrown string class 543
vs. pointer 491-500
arrow keys, as input 940
ASCII code 105
assembler 49
assembly language 49-63
add instruction 91
defined 13
increment instruction 172
mov instruction 91
op code 89
operation code 89
assignment 129
defined 74
operator
See operator =
statement 74, 76
statement vs. algebraic equality 75
See also class, base class, derived class, polymorphic object
B
backslash 108
backspace key, editing with 945
base 16 numbering system 42
base 8 numbering system 41
base class 563, 564, 660
constructor 634-641, 653
special 741
default constructor 636
destructor 679
initializer 636, 637, 639, 653
object 635
part of derived class object 586, 598, 635
defined 565
base class pointer 653, 665
deleting a derived class object through 679
pointing to a derived class object 643, 699
BASIC language 283
batch file 126
beta testing 906
big-endian
See under endian 81
binary number system 32-37
defined 13
bit 63
blank lines
ignored by compiler 73
in input file 776
skipping 776
block 132
defined 68
bool 399
See under variable
booting the computer 20
bootstrapping 125
defined 20
break statement 354, 355, 398
buffer 565
defined 543
byte 63
defined 16
C
C
standard library 411
string
defined 412
vs. std::string 427
string literal 103, 131, 406, 427
defined 68
related to char* 433
type of 446
C++
address of char data for standard string 884
as a "language kit" 299
case sensitivity
of identifiers and keywords 69
of input 390
derivation of name 172
facilities not provided by standard 917, 948
header file preprocessor symbol convention 865
keywords and symbols, reusing 297, 444
operator precedence in 992
philosophy of 858
standard library xlii, 68, 162
reasons for using 859
standard, official name of 232
string position numbering convention in 882
type system 107
cache 24, 27, 53
calendar
and one-based indexing 167
call
See function call
carriage return 985
case statement 922
catch block 456
cerr 354
defined 795
char* 466, 477
use of for variable length data 421
character
nondisplay 108
nonprinting 107
special for program text 109
child class
See derived class
chip
defined 18
cin
defined 111
class
as a user-defined type 302
base
See base class
creating vs. using 393
defined 297
derived
See derived class
designing for others 602
first example definition 305
how to create 303
implementation 297, 303, 318, 392
interface 297, 392
interface and implementation files 303
interface definition 303
internals 318
leaving out name inside declaration 322
member function 297, 318, 322, 330, 393, 397
member variable 298, 319, 323, 330, 393, 397
membership operator ::
See under operator
scope of member variables 327, 329
size of objects determined 321
static member variable 327
types supported like native types 448
vs. namespace 926
clreol function 948, 986
code duplication, reducing 820
comment
defined 73
comparing two streams 804
compilation
defined 5
compiler
checking types of variables 107
defined 5
function of 72
memory leak reporting 457
relation to linker 304
compiler-generated
assignment 313
copy constructor 474
destructor 739
functions 395
vs. native type facilities 311
member functions 394
compiling the compiler 72
concrete data type 309-