preliminary classes,
351-352
relationships, 358-363
static model, 354
transformations,
352-353
views, 353
models, 329-330
process, 331-333
controversies, 335
iterative development,
332
methods, 332
Rational Unified
Process, 332
requirements documents,
335-336
application analysis,
347
artifacts, 349-350
project budgets and
timelines, 348
systems analysis,
347-348
use-case analysis,
336-347
visualizations, 349
UML (Unified Modeling
Language), 330-331
vision statements, 335
object-oriented
programming (OOP),
9, 137-138
data hiding, 10
encapsulation, 10
inheritance, 10-11
polymorphism, 11,
118-121
objects. See also specific
object names
arrays, 416-417
compared to classes, 142
defining, 142, 150
derived, 377-378
free store objects, 238-239
initializing, 154, 297
passing, 397-399
passing references to,
277-279
referencing, 260-261
nonexistent objects,
281-283
objects on heap,
283-285
size of, 172
states, 617
template objects, 678-682
temporary
nameless, 307-309
returning, 306-307
values, assigning, 143
oct flag, 618
octal notation, 59
ofstream objects
arguments, 626
condition states, 624
default behavior,
626-628
opening files, 624-626
.ojb filename extension, 15
OOD. Seeobject-oriented
design
OOP. Seeobject-oriented
programming
opening files, 624-626
operators, 70-71
address of, 222-223,
257-258
assignment, 50, 71,
317-320
bitwise, 773-774
concatenation, 759-760
conditional, 94-95
conversion
creating, 321-323
sample program,
323-324
decrement, 74-76
dot, 150, 239
dynamic_cast, 453
extraction, 599, 603-604
increment, 74-76, 303-304
indirection, 226, 280
insertion, 585-589
logical, 91-92
mathematical
addition, 314-316
modulus, 73
self-assigned, 74
subtraction, 71-72
new, 279
ostream, 674
overloading, 302-303
addition, 314-316
friend functions,
580-585
guidelines, 317
limitations, 316-317
prefix operators,
304-306
temporary objects,
306-309
this pointer, 309-310
points-to, 240-241
postfix, 311-313
precedence, 77, 92-93,
819-820
redirection, 28, 598
reference, 256, 280-281
relational, 79-82
scope resolution, 640
true/false operations,
93-94
OR operators
bitwise, 774
logical, 91
ostream class, 597
ostream operator, 674-678
output. See alsoI/O
(input/output)
flushing, 613
formatting, 622-623
fill characters,
616-617
flags, 617-620
width, 615-616
output devices, writing to,
613-614
output redirection operator
(<<), 28
902 object-oriented design
34 0672327112 index.qxd 11/19/04 12:31 PM Page 902