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
iostreams: applicator · 231; automatic · 219; buffering · 200; dec · 225; dec (decimal) · 225; endl · 225; files · 188; fixed · 227; flush · 224, 225; format flags · 215; formatting manipulators · 224; fseek( ) · 203; get( ) · 198; getline( ) · 198; hex · 225; hex (hexadecimal) · 225; ignore( ) · 198; internal · 226; internal formatting data · 215; ios::basefield · 217; ios::beg · 204; ios::cur · 204; ios::dec · 218; ios::end · 204; ios::fill( ) · 220; ios::fixed · 218; ios::flags( ) · 215; ios::hex · 218; ios::internal · 219; ios::left · 219; ios::oct · 218; ios::precision( ) · 220; ios::right · 219; ios::scientific · 218; ios::showbase · 216; ios::showpoint · 216; ios::showpos · 216; ios::skipws · 216; ios::unitbuf · 216; ios::uppercase · 216; ios::width( ) · 220; left · 226; manipulators, creating · 230; noshowbase · 225; noshowpoint · 226; noshowpos · 226; noskipws · 226; nouppercase · 226; oct (octal) · 225; open modes · 199; precision( ) · 244; rdbuf( ) · 201; resetiosflags · 227; right · 226; scientific · 227; seekg( ) · 204; seeking in · 203; seekp( ) · 204; setbase · 227; setf( ) · 215, 244; setfill · 227; setiosflags · 227; setprecision · 228; showbase · 225; showpoint · 226; showpos · 226; skipws · 226; tellg( ) · 204; tellp( ) · 204; uppercase · 226; width, fill and precision · 219; ws · 225
istream · 182
istringstreams · 182
istrstream · 207
iterator · 665
J
Java: and concurrency/threads · 722
Josee Lajoie · 84
K
keyword: catch · 39
L
lazy initialization · 666
length_error: Standard C++ library exception type · 61
library: maintaining class source · 235
LIMITS.H · 234
line input · 188
Linux: and ZThreads · 724
logic_error: Standard C++ library exception type · 60
logic_error class · 58
longjmp( ) · 35
M
maintaining class library source · 235
manipulator: creating · 230; iostreams formatting · 224
memory management, and threads · 740
modes, iostream open · 199
modulus operator · 247
monolithic · 622
multiple dispatching · 710
multiple inheritance: and run-time type identification · 608, 611, 619; duplicate subobjects · 635; exception handling · 79; repairing an interface · 655
multiprocessor machine, and threading · 720
multitasking · 719
multithreading · 719; drawbacks · 803
multithreading library for C++, ZThread · 722
mutex: ZThread FastMutex · 761
mutex, simplifying with the Guard template · 750
mutex, threading · 772
mutual exclusion, in threads · 749
N
naked pointers, and exception handling · 50
non-local goto: setjmp( ) and longjmp( ) · 35
notifyObservers( ) · 699, 702
O
object: object-based hierarchy · 622; slicing, and exception handling · 42; temporary · 234
Observable · 699
observer design pattern · 699
oct · 225
ofstream · 182, 196
open modes, iostreams · 199
operator: [] · 54; << · 184; >> · 184; modulus · 247
optimization: throughput, with threading · 720
order: of constructor and destructor calls · 610
order, controlling initialization · 667
ostream · 182, 198
ostringstreams · 182
ostrstream · 207
out_of_range: Standard C++ library exception type · 61
output: stream formatting · 214
overhead: exception handling · 81
P
Park, Nick · 291
patterns, design patterns · 663
perror( ) · 34
philosophers, dining and threading · 795
pointer: pointer to a function · 47
polymorphism · 613
PoolExecutor (Concurrency) · 732
precision: width, fill, iostream · 219
precision( ) · 244
preprocessor: stringizing · 222
printf( ) · 180, 214; error code · 33; run-time interpreter · 180
priority, thread · 738
private: constructor · 666
process, and threading · 719
producer-consumer, threading · 777
put pointer · 204
Q
queues, thread, for problem-solving · 781
R
race condition · 746
RAII · 52, 56
raise( ) · 34
rand( ) · 246
RAND_MAX · 247
raw, reading bytes · 191
rdbuf( ) · 201
read( ) · 191
reading raw bytes · 191
reference: and exception handling · 80; exception handling · 54
reference counting, and ZThreads (Concurrency) · 741
reporting errors in book · 26
Resource: Acquisition Is Initialization · 52
Resource Acquisition Is Initialization · 52
responsive user interfaces · 728