|
|
 |
|
|
|
|
H files, 20 |
|
|
|
 |
|
|
|
|
handling errors, 423 |
|
|
|
 |
|
|
|
|
has-a relationships, 105, 108 |
|
|
|
 |
|
|
|
|
head nodes, 302-304, 309 |
|
|
|
 |
|
|
|
|
header files (.HPP), 102, 351, 438 |
|
|
|
 |
|
|
|
|
headers, 24 |
|
|
|
 |
|
|
|
|
functions, 64 |
|
|
|
 |
|
|
|
|
class method definitions, 101 |
|
|
|
 |
|
|
|
|
names, 24 |
|
|
|
 |
|
|
|
|
parameters, 24-25 |
|
|
|
 |
|
|
|
|
return types, 24 |
|
|
|
 |
|
|
|
|
HeadNode object, 313 |
|
|
|
 |
|
|
|
|
heap, 143, 235-236, 187-189. See also free store |
|
|
|
 |
|
|
|
|
HELLO.CPP program, 13-15, 19-20 |
|
|
|
 |
|
|
|
|
hexadecimal numbers, 452-455 |
|
|
|
 |
|
|
|
|
hiding |
|
|
|
 |
|
|
|
|
base class functions, 280 |
|
|
|
 |
|
|
|
|
base class methods, 262 |
|
|
|
 |
|
|
|
|
methods, 263-264 |
|
|
|
 |
|
|
|
|
hierarchies |
|
|
|
 |
|
|
|
|
complex, 294, 297-298 |
|
|
|
 |
|
|
|
|
creating (classes), 286, 289 |
|
|
|
 |
|
|
|
|
inheritance, 386 |
|
|
|
 |
|
|
|
|
objects, 387 |
|
|
|
 |
|
|
|
|
parallel, 385 |
|
|
|
 |
|
|
|
|
rooted, 386-387 |
|
|
|
 |
|
|
|
|
high-level program designing, 377-378 |
|
|
|
 |
|
|
|
|
.HPP files (header files), 102, 351, 438 |
|
|
|
 |
|
|
|
|
human-readable form, 11 |
|
|
|
 |
|
|
|
|
hyphen (-) |
|
|
|
 |
|
|
|
|
decrement operator (--), 46 |
|
|
|
 |
|
|
|
|
postfix, 46-48 |
|
|
|
 |
|
|
|
|
prefix, 46-48 |
|
|
|
 |
|
|
|
|
IDE (integrated development environment), 12, 101, 348 |
|
|
|
 |
|
|
|
|
defining from, 352 |
|
|
|
 |
|
|
|
|
examining intermediate files, 348 |
|
|
|
 |
|
|
|
|
identification numbers (objects), 388 |
|
|
|
 |
|
|
|
|
identifiers, 436 |
|
|
|
 |
|
|
|
|
#ifdef command, 349, 352 |
|
|
|
 |
|
|
|
|
#ifndef command, 349, 352 |
|
|
|
 |
|
|
|
|
if statements, 51-53 |
|
|
|
 |
|
|
|
|
braces, 55-57 |
|
|
|
 |
|
|
|
|
complex, 53-55 |
|
|
|
 |
|
|
|
|
implementation files (.CPP), 351 |
|
|
|
 |
|
|
|
|
implementing pure virtual functions, 291, 294 |
|
|
|
 |
|
|
|
|
#include directive, 20, 26, 62, 348 |
|
|
|
 |
|
|
|
|
include files, 20 |
|
|
|
 |
|
|
|
|
include path, 15 |
|
|
|
 |
|
|
|
|
inclusion, 351-352 |
|
|
|
 |
|
|
|
|
inclusion guards, 351 |
|
|
|
 |
|
|
|
|
increment operator (++), 46, 212-214 |
|
|
|
 |
|
|
|
|
overloading, 208, 210 |
|
|
|
 |
|
|
|
|
postfix, 46-48 |
|
|
|
 |
|
|
|
|
prefix, 46-48 |
|
|
|
 |
|
|
|
|
incremented values, 210 |
|
|
|
 |
|
|
|
|
incrementing pointers, 236 |
|
|
|
 |
|
|
|
|
indenting switch statements, 435 |
|
|
|
 |
|
|
|
|
index operator ([]), 229 |
|
|
|
 |
|
|
|
|
indexing arrays (pointers), 238 |
|
|
|
 |
|
|
|
|
indicating precedence, 435 |
|
|
|
 |
|
|
|
|
indirection, 138 |
|
|
|
 |
|
|
|
|
indirection operator (*), 138, 142 |
|
|
|
 |
|
|
|
|
infinite loops, 310, 380 |
|
|
|
 |
|
|
|
|
inheritance, 8, 247-248, 251, 266, 290, 420 |
|
|
|
 |
|
|
|
|
multiple, 386 |
|
|
|
 |
|
|
|
|
potential problems, 281 |
|
|
|
 |
|
|
|
|
public, 252 |
|
|
|
 |
|
|
|
|
virtual methods, 289 |
|
|
|
 |
|
|
|
|
hierarchies, 386 |
|
|
|
 |
|
|
|
|
initializing |
|
|
|
 |
|
|
|
|
arrays, 228-229 |
|
|
|
 |
|
|
|
|
constants, 37, 199 |
|
|
|
 |
|
|
|
|
constructors, 199, 205 |
|
|
|
 |
|
|
|
|
enumerated constants, 39 |
|
|
|
 |
|
|
|
|
functions, 289-290 |
|
|
|
 |
|
|
|
|
pointers, 137 |
|
|
|
 |
|
|
|
|
references, 162-164, 199 |
|
|
|
 |
|
|
|
|
variables, 33-34, 94 |
|
|
|
 |
|
|
|
|
defining, 94 |
|
|
|
 |
|
|
|
|
member, 199 |
|
|
|
 |
|
|
|
|
inline class methods, 102 |
|
|
|
 |
|
|
|
|
inline functions, 102-104 |
|
|
|
 |
|
|
|
|
declaring, 76-78 |
|
|
|
 |
|
|
|
|
disadvantages, 76 |
|
|
|
 |
|
|
|
|
inline statements, 76 |
|
|
|
 |
|
|
|
|
inserting nodes, 310-313 |
|
|
|
 |
|
|
|
|
instantiating |
|
|
|
 |
|
|
|
|
ADTs, 289, 298 |
|
|
|
 |
|
|
|
|
objects, 298 |
|
|
|
 |
|
|
|
|
instantiation, 404 |
|
|
|
 |
|
|
|
|
int, 223 |
|
|
|
 |
|
|
|
|
return types, 65 |
|
|
|
 |
|
|
|
|
variables, 29, 185 |
|
|
|
 |
|
|
|
|
int(), 222 |
|
|
|
 |
|
|
|
|
integers |
|
|
|
 |
|
|
|
|
negative, 30 |
|
|
|
 |
|
|
|
|
positive, 30 |
|
|
|
 |
|
|
|
|
integrated development environment (IDE), 12, 101, 348 |
|
|
|
 |
|
|
|
|
defining from, 352 |
|
|
|
 |
|
|
|
|
examining intermediate files, 348 |
|
|
|
 |
|
|
|
|
InteralNode object, 313 |
|
|
|
 |
|
|
|
|
interface design prototypes, 390 |
|
|
|
 |
|
|
|
|
interfaces, designing, 102, 388. See also class declarations |
|
|
|
 |
|
|
|
|
interim values, printing, 364-365, 371 |
|
|
|
 |
|
|
|
|
intermediate files, 348 |
|
|
|
 |
|
|
|
|
intermediate source code, 355 |
|
|
|
 |
|
|
|
|
internal nodes, 304, 313 |
|
|
|
 |
|
|
|
|
interpreters, 6 |
|
|
|
 |
|
|
|
|
invalid programs, 167 |
|
|
|
 |
|
|
|
|
Invariants() method, 360, 364 |
|
|
|
 |
|
|
|
|
invocations (shorthand), 333 |
|
|
|
 |
|
|
|
|
invoking |
|
|
|
 |
|
|
|
|
functions. See functions, calling |
|
|
|
 |
|
|
|
|
virtual functions, 273-275 |
|
|
|
 |
|
|
|
|
is-a relationships, 248, 254 |
|
|
|
 |
|
|
|
|
iteration. See loops |
|
|
|
 |
|
|
|
|
KB (kilobytes), 451 |
|
|
|
 |
|
|
|
|
keywords, 32, 436, 445-446 |
|
|
|
 |
|
|
|
|
access control, 91 |
|
|
|
 |
|
|
|
|
class, 87 |
|
|
|
 |
|
|
|
|
const, 99, 109, 156, 260, 348 |
|
|
|
|
|