|
|
 |
|
|
|
|
determining |
|
|
|
 |
|
|
|
|
locations |
|
|
|
 |
|
|
|
|
catch blocks, 428 |
|
|
|
 |
|
|
|
|
try blocks, 428 |
|
|
|
 |
|
|
|
|
objects, 385 |
|
|
|
 |
|
|
|
|
program requirements, 377, 384-385 |
|
|
|
 |
|
|
|
|
required objects for programs, 378 |
|
|
|
 |
|
|
|
|
size (variables), 30 |
|
|
|
 |
|
|
|
|
development cycle, 13 |
|
|
|
 |
|
|
|
|
waterfall method, 375 |
|
|
|
 |
|
|
|
|
directives. See commands |
|
|
|
 |
|
|
|
|
disarming pointers, 156 |
|
|
|
 |
|
|
|
|
division operator (/), 45 |
|
|
|
 |
|
|
|
|
dowhile loops, 119-120 |
|
|
|
 |
|
|
|
|
dot operator (.), 151, 352 |
|
|
|
 |
|
|
|
|
double quotation marks( ), 21 |
|
|
|
 |
|
|
|
|
double slash (//) comments, 22, 26 |
|
|
|
 |
|
|
|
|
doubles, 35 |
|
|
|
 |
|
|
|
|
doubly linked lists, 302 |
|
|
|
 |
|
|
|
|
driver programs, 394, 400-401 |
|
|
|
 |
|
|
|
|
dynamic cast operator, 283, 286 |
|
|
|
 |
|
|
|
|
dynamic casting, 299 |
|
|
|
 |
|
|
|
|
elements, 225 |
|
|
|
 |
|
|
|
|
arrays |
|
|
|
 |
|
|
|
|
accessing, 226-227 |
|
|
|
 |
|
|
|
|
uninitialized, 243 |
|
|
|
 |
|
|
|
|
else clause, 51-53 |
|
|
|
 |
|
|
|
|
#else command, 349 |
|
|
|
 |
|
|
|
|
conditional compiling, 352 |
|
|
|
 |
|
|
|
|
empty for loops, 124-126 |
|
|
|
 |
|
|
|
|
encapsulation, 8, 87, 379 |
|
|
|
 |
|
|
|
|
#endif command, 349 |
|
|
|
 |
|
|
|
|
enum keyword, 39 |
|
|
|
 |
|
|
|
|
enumerated constants, 39 |
|
|
|
 |
|
|
|
|
environment variables, 15 |
|
|
|
 |
|
|
|
|
equals operator (==), 44-45, 50-51, 218 |
|
|
|
 |
|
|
|
|
error handling, 423 |
|
|
|
 |
|
|
|
|
errors |
|
|
|
 |
|
|
|
|
compile-time, 15-17, 63-64, 81, 101, 280, 289, 298 |
|
|
|
 |
|
|
|
|
compilers, 73, 109, 250 |
|
|
|
 |
|
|
|
|
compiling, 15-17 |
|
|
|
 |
|
|
|
|
fence posts, 228 |
|
|
|
 |
|
|
|
|
finding, 100, 109 |
|
|
|
 |
|
|
|
|
compile-time, 101 |
|
|
|
 |
|
|
|
|
run-time, 101 |
|
|
|
 |
|
|
|
|
eternal loops (while(true) loops), 117-118 |
|
|
|
 |
|
|
|
|
evaluating expressions, 43-44 |
|
|
|
 |
|
|
|
|
event loops, 380-382 |
|
|
|
 |
|
|
|
|
examining this pointer (assignment operator (=)), 216-218 |
|
|
|
 |
|
|
|
|
exceptions, 422-424 |
|
|
|
 |
|
|
|
|
catching, 424, 427-429 |
|
|
|
 |
|
|
|
|
determining locations, 428 |
|
|
|
 |
|
|
|
|
handling, 423 |
|
|
|
 |
|
|
|
|
passing by reference, 429, 433 |
|
|
|
 |
|
|
|
|
polymorphic, 429, 433 |
|
|
|
 |
|
|
|
|
raising, 427-428 |
|
|
|
 |
|
|
|
|
throwing, 424, 427-428 |
|
|
|
 |
|
|
|
|
transmitting information about problems, 424 |
|
|
|
 |
|
|
|
|
executable files, creating, 13 |
|
|
|
 |
|
|
|
|
executable programs, turning object files into, 12 |
|
|
|
 |
|
|
|
|
executing |
|
|
|
 |
|
|
|
|
functions, 23, 61 |
|
|
|
 |
|
|
|
|
programs, 23 |
|
|
|
 |
|
|
|
|
exiting functions, 25 |
|
|
|
 |
|
|
|
|
expressions, 43-44. See also operators |
|
|
|
 |
|
|
|
|
evaluating, 43-44 |
|
|
|
 |
|
|
|
|
examples, 43 |
|
|
|
 |
|
|
|
|
false values, 59-60 |
|
|
|
 |
|
|
|
|
falsity, 50 |
|
|
|
 |
|
|
|
|
fence post errors, 228 |
|
|
|
 |
|
|
|
|
_FILE_ macro (predefined), 357 |
|
|
|
 |
|
|
|
|
filenames, 352 |
|
|
|
 |
|
|
|
|
files |
|
|
|
 |
|
|
|
|
designing, 389 |
|
|
|
 |
|
|
|
|
executable, creating, 13 |
|
|
|
 |
|
|
|
|
H, 20 |
|
|
|
 |
|
|
|
|
header (.HPP), 102, 351, 438 |
|
|
|
 |
|
|
|
|
implementation (.CPP), 101, 351 |
|
|
|
 |
|
|
|
|
include, 20 |
|
|
|
 |
|
|
|
|
intermediate, 348 |
|
|
|
 |
|
|
|
|
linkable. See also libraries, 13 |
|
|
|
 |
|
|
|
|
.OBJ, 351 |
|
|
|
 |
|
|
|
|
object, 12 |
|
|
|
 |
|
|
|
|
saving, 11 |
|
|
|
 |
|
|
|
|
simple text (writing programs), 11 |
|
|
|
 |
|
|
|
|
source, 11 |
|
|
|
 |
|
|
|
|
source code, 347-348 |
|
|
|
 |
|
|
|
|
text, 16 |
|
|
|
 |
|
|
|
|
filling arrays, 240 |
|
|
|
 |
|
|
|
|
filtering access (contained members), 328 |
|
|
|
 |
|
|
|
|
FindArea() function, 64 |
|
|
|
 |
|
|
|
|
finding |
|
|
|
 |
|
|
|
|
bugs, 101, 159 |
|
|
|
 |
|
|
|
|
errors, 100-101, 109 |
|
|
|
 |
|
|
|
|
floating-point variables, 30 |
|
|
|
 |
|
|
|
|
floats, 35, 40 |
|
|
|
 |
|
|
|
|
flow control, 111 |
|
|
|
 |
|
|
|
|
for loops, 121 |
|
|
|
 |
|
|
|
|
empty, 124-126 |
|
|
|
 |
|
|
|
|
example, 122 |
|
|
|
 |
|
|
|
|
multiple initialization, 122-123 |
|
|
|
 |
|
|
|
|
nesting, 126-127 |
|
|
|
 |
|
|
|
|
null statements, 123-125 |
|
|
|
 |
|
|
|
|
sequence of operations, 122 |
|
|
|
 |
|
|
|
|
formats, rich text, 391 |
|
|
|
 |
|
|
|
|
forward slash (/), 45 |
|
|
|
 |
|
|
|
|
free store, 143, 148, 159, 235-236. See also heap |
|
|
|
 |
|
|
|
|
advantages, 144 |
|
|
|
 |
|
|
|
|
arrays |
|
|
|
 |
|
|
|
|
declaring, 235-238 |
|
|
|
 |
|
|
|
|
deleting, 238 |
|
|
|
 |
|
|
|
|
storing, 234-235 |
|
|
|
 |
|
|
|
|
cleaning, 144 |
|
|
|
 |
|
|
|
|
memory, 234 |
|
|
|
 |
|
|
|
|
allocating, 189 |
|
|
|
 |
|
|
|
|
reserving memory, 144 |
|
|
|
 |
|
|
|
|
returning memory, 145 |
|
|
|
 |
|
|
|
|
objects |
|
|
|
 |
|
|
|
|
accessing, 151-152 |
|
|
|
 |
|
|
|
|
creating, 151 |
|
|
|
 |
|
|
|
|
declaring, 159 |
|
|
|
 |
|
|
|
|
deleting, 150-151 |
|
|
|
 |
|
|
|
|
variables, global/local, 143 |
|
|
|
|
|