exception handling · 33; asynchronous events · 76; atomic allocations for safety · 52; automatic type conversions · 42; bad_cast Standard C++ library exception type · 61; bad_exception class · 65; bad_typeid Standard C++ library exception type · 61; catching any exception · 44; class hierarchies · 43; cleaning up the stack during a throw · 48; constructors · 48, 50, 80; destructors · 48, 56, 80; domain_error Standard C++ library exception type · 61; ellipses · 44; exception class · 58; exception class, what( ) · 59; exception handler · 39; exception hierarchies · 79; exception matching · 42; exception Standard C++ library exception type · 60; incomplete objects · 48; inheritance · 43; invalid_argument Standard C++ library exception type · 61; length_error Standard C++ library exception type · 61; logic_error Standard C++ library exception type · 60; memory leaks · 48; multiple inheritance · 79; naked pointers · 50; object slicing and exception handling · 42; out_of_range Standard C++ library exception type · 61; overhead of · 81; programming guidelines · 75; references · 54, 80; resource management · 50; runtime_error class · 58; runtime_error Standard C++ library exception type · 60; set_terminate( ) · 46; set_unexpected( ) · 63; specification · 62; specifications and inheritance · 68; specifications, covariance · 69; specifications, when not to use · 70; stack unwinding · 38; Standard C++ library exception type · 60; Standard C++ library exceptions · 58; terminate( ) · 65; termination vs. resumption · 41; testing · 104; throwing & catching pointers · 80; throwing an exception · 37; typical uses of exceptions · 77; uncaught exceptions · 45; unexpected( ) · 63; when to avoid · 75; zero-cost model · 83
exception hierarchies · 79
exception neutral · 74
exception safety · 70
exception specifications · 62; covariance of · 69; inheritance · 68; when not to use · 70
exclusion, mutual, in threads · 749
Executors, ZThread (Concurrency) · 731
exeption handling: logic_error class · 58
extensible program · 181
extractor · 184
F
file: iostreams · 182, 188
FILE, stdio · 177
fill: width, precision, iostream · 219
flags, iostreams format · 215
flock( ), and SynchronousExecutor (Concurrency) · 733
flush, iostreams · 224, 225
format flags, iostreams · 215
formatting: formatting manipulators, iostreams · 224; in-core · 207; iostream internal data · 215; output stream · 214
fseek( ) · 203
FSTREAM.H · 197
function: applying a function to a container · 289; function templates · 279; pointer to a function · 47
Function-level try blocks · 56
G
get pointer · 205
get( ) · 190, 198; overloaded versions · 191; with streambuf · 202
getline( ) · 190, 198
getPriority( ) · 739
goto: non-local goto, setjmp( ) and longjmp( ) · 35
graphical user interface (GUI) · 188
Guard template, ZThread (concurrency) · 750
GUI: graphical user interface · 188
H
handler, exception · 39
handshaking, between concurrent tasks · 772
hex · 225
hex (hexadecimal) in iostreams · 225
hex( ) · 218
hexadecimal · 217
hierarchy: object-based hierarchy · 622
I
I/O: and threads, blocking · 767; console · 188
ifstream · 182, 196, 202
ignore( ) · 198
in-core formatting · 207
inheritance: and design patterns · 664; multiple inheritance and run-time type identification · 608, 611, 619
initialization: controlling initialization order · 667
Initialization: Resource Acquisition Is Initialization · 52
initialization, lazy · 666
input: line at a time · 188
inserter · 184
interface: command-line · 188; graphical user (GUI) · 188; repairing an interface with multiple inheritance · 655
interfaces: responsive user · 728
interpreter, printf( ) run-time · 180
interrupt( ), threading · 765
interrupted status, threading · 769
Interrupted_Exception, threading · 769
invalid_argument: Standard C++ library exception type · 61
iostream: and threads (concurrency), colliding output · 757
IOSTREAM.H · 197