|
|
 |
|
|
|
|
copying (shallow copies), 216 |
|
|
|
 |
|
|
|
|
private, 252 |
|
|
|
 |
|
|
|
|
protected, 252 |
|
|
|
 |
|
|
|
|
memory |
|
|
|
 |
|
|
|
|
addresses, 28, 134, 145 |
|
|
|
 |
|
|
|
|
pointers, 134 |
|
|
|
 |
|
|
|
|
storing (this pointer), 155 |
|
|
|
 |
|
|
|
|
allocating, 201-204 |
|
|
|
 |
|
|
|
|
class constructors, 152-154 |
|
|
|
 |
|
|
|
|
compilers, 135 |
|
|
|
 |
|
|
|
|
deep copies, 216 |
|
|
|
 |
|
|
|
|
free store, 189 |
|
|
|
 |
|
|
|
|
functions, 190 |
|
|
|
 |
|
|
|
|
methods, 152-154 |
|
|
|
 |
|
|
|
|
new keyword, 144 |
|
|
|
 |
|
|
|
|
arrays, 233 |
|
|
|
 |
|
|
|
|
creating, 145, 190 |
|
|
|
 |
|
|
|
|
deleting, 152-154, 216 |
|
|
|
 |
|
|
|
|
free store, 143, 234 |
|
|
|
 |
|
|
|
|
reserving, 144 |
|
|
|
 |
|
|
|
|
returning to, 145 |
|
|
|
 |
|
|
|
|
freeing, 190, 238 |
|
|
|
 |
|
|
|
|
passing between functions, 189 |
|
|
|
 |
|
|
|
|
pointers, 134, 189 |
|
|
|
 |
|
|
|
|
setting aside, 28 |
|
|
|
 |
|
|
|
|
stack, 234 |
|
|
|
 |
|
|
|
|
stacks, 78 |
|
|
|
 |
|
|
|
|
variables, 27 |
|
|
|
 |
|
|
|
|
memory leaks, 145-147, 188-189, 216, 238 |
|
|
|
 |
|
|
|
|
memory locations (cubby holes), 28 |
|
|
|
 |
|
|
|
|
methods, 87 |
|
|
|
 |
|
|
|
|
accessing, 283 |
|
|
|
 |
|
|
|
|
accessor, 90, 294, 392 |
|
|
|
 |
|
|
|
|
acquiring (derived classes), 387 |
|
|
|
 |
|
|
|
|
allocating memory, 152-154 |
|
|
|
 |
|
|
|
|
base, calling, 264-265 |
|
|
|
 |
|
|
|
|
base class, hiding, 262 |
|
|
|
 |
|
|
|
|
class, 94. See also constructors |
|
|
|
 |
|
|
|
|
declaring, 91 |
|
|
|
 |
|
|
|
|
defining, 91 |
|
|
|
 |
|
|
|
|
size, 98 |
|
|
|
 |
|
|
|
|
clone, 276-279 |
|
|
|
 |
|
|
|
|
Compare(), 309 |
|
|
|
 |
|
|
|
|
hiding, 263-264 |
|
|
|
 |
|
|
|
|
Invariants(), 360, 364 |
|
|
|
 |
|
|
|
|
names, 436 |
|
|
|
 |
|
|
|
|
overriding, 260-262 |
|
|
|
 |
|
|
|
|
public accessor, 320, 329 |
|
|
|
 |
|
|
|
|
root classes, 388 |
|
|
|
 |
|
|
|
|
virtual, 267-269, 279, 289 |
|
|
|
 |
|
|
|
|
minus sign (-) |
|
|
|
 |
|
|
|
|
decrement operator (--), 46 |
|
|
|
 |
|
|
|
|
postfix, 46-48 |
|
|
|
 |
|
|
|
|
prefix, 46-48 |
|
|
|
 |
|
|
|
|
modifying code, 20 |
|
|
|
 |
|
|
|
|
modulus operator (%), 45 |
|
|
|
 |
|
|
|
|
multidimensional arrays, 231 |
|
|
|
 |
|
|
|
|
creating, 233 |
|
|
|
 |
|
|
|
|
initializing, 232 |
|
|
|
 |
|
|
|
|
subscripts, 231-232 |
|
|
|
 |
|
|
|
|
multiple inheritance, 273, 386 |
|
|
|
 |
|
|
|
|
multiple return statements, 73 |
|
|
|
 |
|
|
|
|
multiple values, returning, 172 |
|
|
|
 |
|
|
|
|
multiplication operator (*), 207 |
|
|
|
 |
|
|
|
|
names, 63 |
|
|
|
 |
|
|
|
|
arrays, 236-238, 330 |
|
|
|
 |
|
|
|
|
functions, 330, 340, 436 |
|
|
|
 |
|
|
|
|
identifiers, 436 |
|
|
|
 |
|
|
|
|
macros, 370 |
|
|
|
 |
|
|
|
|
methods, 436 |
|
|
|
 |
|
|
|
|
variables, 436 |
|
|
|
 |
|
|
|
|
naming |
|
|
|
 |
|
|
|
|
conventions, 88 |
|
|
|
 |
|
|
|
|
defined symbols, 352 |
|
|
|
 |
|
|
|
|
pointers, 138 |
|
|
|
 |
|
|
|
|
root classes, 387 |
|
|
|
 |
|
|
|
|
source files, 11 |
|
|
|
 |
|
|
|
|
variables, 31-32 |
|
|
|
 |
|
|
|
|
negative integers, 30 |
|
|
|
 |
|
|
|
|
nesting |
|
|
|
 |
|
|
|
|
loops, 126-127 |
|
|
|
 |
|
|
|
|
parentheses, 49 |
|
|
|
 |
|
|
|
|
new keyword, 144 |
|
|
|
 |
|
|
|
|
not equals operator (!=), 50-51 |
|
|
|
 |
|
|
|
|
node objects, 314 |
|
|
|
 |
|
|
|
|
nodes, 302-304, 314 |
|
|
|
 |
|
|
|
|
head, 302-304, 309 |
|
|
|
 |
|
|
|
|
inserting, 310-313 |
|
|
|
 |
|
|
|
|
internal, 304, 313 |
|
|
|
 |
|
|
|
|
tail, 302-304, 309 |
|
|
|
 |
|
|
|
|
non-pure virtual functions, 294, 297-298 |
|
|
|
 |
|
|
|
|
non-root classes, 386 |
|
|
|
 |
|
|
|
|
nonexistent objects, 185-187 |
|
|
|
 |
|
|
|
|
normal member data, 318 |
|
|
|
 |
|
|
|
|
numbers |
|
|
|
 |
|
|
|
|
base 7, 449 |
|
|
|
 |
|
|
|
|
base 8, 448-449 |
|
|
|
 |
|
|
|
|
base 10, 447-449 |
|
|
|
 |
|
|
|
|
binary, 450-451 |
|
|
|
 |
|
|
|
|
hexadecimal, 452-455 |
|
|
|
 |
|
|
|
|
null references, 167 |
|
|
|
 |
|
|
|
|
null characters, 239 |
|
|
|
 |
|
|
|
|
null objects, 167 |
|
|
|
 |
|
|
|
|
null pointers, 137, 145, 167 |
|
|
|
 |
|
|
|
|
null statements for loops, 123-125 |
|
|
|
 |
|
|
|
|
numbering arrays, 238, 243 |
|
|
|
 |
|
|
|
|
nybbles, 451 |
|
|
|
 |
|
|
|
|
object code, 6 |
|
|
|
 |
|
|
|
|
object files, 12 |
|
|
|
 |
|
|
|
|
object-oriented |
|
|
|
 |
|
|
|
|
analysis, 402 |
|
|
|
 |
|
|
|
|
design, 402 |
|
|
|
 |
|
|
|
|
development |
|
|
|
 |
|
|
|
|
data hiding, 8 |
|
|
|
 |
|
|
|
|
encapsulation, 8 |
|
|
|
 |
|
|
|
|
inheritance, 8 |
|
|
|
 |
|
|
|
|
polymorphism, 8-9 |
|
|
|
 |
|
|
|
|
programming, 7-9, 402 |
|
|
|
 |
|
|
|
|
objects, 435 |
|
|
|
 |
|
|
|
|
accessing, 154-155 |
|
|
|
 |
|
|
|
|
free store, 151-152 |
|
|
|
 |
|
|
|
|
adding (lists), 314 |
|
|
|
 |
|
|
|
|
calling destructors, 178-180 |
|
|
|
 |
|
|
|
|
changing value of members, 100 |
|
|
|
 |
|
|
|
|
cin, 21, 26 |
|
|
|
 |
|
|
|
|
class (size), 98 |
|
|
|
 |
|
|
|
|
classes, compared, 88-89 |
|
|
|
 |
|
|
|
|
const (declaring pointers), 157-159 |
|
|
|
 |
|
|
|
|
constant, 157 |
|
|
|
 |
|
|
|
|
copying, 177, 200 |
|
|
|
 |
|
|
|
|
cout, 20-21, 26 |
|
|
|
|
|