Raccoon
, virtual base class, 812
raise exception, see
throw
rand
function, drawbacks, 745
random
header, 745
random IO, 765
machine-dependent, 763
program, 766
random-access iterator, 412, 418
random-number library, 745
compared to
rand
function, 745
default_random_engine
, 745
max, min
, 747
retain state, 747
range, 747
random_shuffle
, 878
range for
statement, 91, 132, 187, 187–189, 200
multidimensional array, 128
not with dynamic array, 477
range_error
, 197
rdstate
, stream, 313
read
istream
, 763
Sales_data
, 261
reallocate
, StrVec
, 530
move iterator version, 543
variadic template, 701
ref
, binds reference parameter, 400, 418
see also lvalue reference
see also rvalue reference
auto
deduces referred to type, 69
collapsing rule, 688
forward
, 694
lvalue arguments, 688
move
, 691
rvalue reference parameters, 693
const
, see reference toconst
conversion
not from
const
, 61
to reference to
const
, 162
data member, initialization, 289
declaration style, 57
decltype
yields reference type, 71
definition, 51
derived-to-base conversion, 597
under multiple inheritance, 805
dynamic_cast
operator, 826
initialization, 51
member function, 546
bind
, 400
limitations, 214
remove_reference
, 684
return type, 224
assignment operator, 500
is lvalue, 226
return value, local variable, 225
to array parameter, 217
reference
, container, 333
reference count, 452, 491, 514, 550
copy assignment, 514
copy constructor, 514
design, 514
destructor, 514
argument, 211
initialization, 61
return type, 226
error_type
, 732
header, 728
syntax_option_type
, 730
regex_constants
, 743
match_flag_type
, 743
format flags, 744
format string, 742
regular expression library, 728, 770
case sensitive, 730
compiled at run time, 732
ECMAScript, 730
file extension program, 730
i before e program, 729
version 2, 734
pattern, 729
phone number,
valid
, 740
phone number pattern, 739
phone number program, 738
phone number reformat, program, 742
regex iterators, 734
search functions, 729
smatch
, provides context for a match, 735
subexpression, 738
file extension program version 2, 738
types, 733
valid
, program, 740
machine-dependent, 164
relational operators, 141, 143
arithmetic conversion, 144
container adaptor, 370
container member, 340
function object, 574
iterator, 111
overloaded operator, 562
Sales_data
, 563
string
, 88
tuple
, 720
vector
, 102
release
, unique_ptr
, 470
remove
, 878
list
andforward_list
, 415
remove_copy
, 878
remove_copy_if
, 878
remove_from_Folders
, Message
, 523
remove_if
, 878
list
andforward_list
, 415
remove_pointer
, 685
remove_reference
, 684
move
, 691
string
, 362
replace_copy_if
, 874
replace_if
, 875
reserve
string
, 356
vector
, 356
reserved identifiers, 46
reset
bitset
, 727
shared_ptr
, 466
unique_ptr
, 470
reset
program
pointer parameters, 209
reference parameters, 210
resize
invalidates iterator, 352
sequential container, 352
value initialization, 352
restricted word_count
program, 422
*
(dereference), lvalue, 135
[]
(subscript), lvalue, 135
,
(comma operator), lvalue, 158
?:
(conditional operator), lvalue, 151
cast, lvalue, 163
rethrow, 776
exception object, 777
return
statement, 222, 222–228
from
main
, 227
implicit return from
main
, 223
return type, 2, 27, 202, 204, 252
array, 204
array using
decltype
, 230
function, 204
function pointer, 249
using
decltype
, 250
linkage directive, 859
main
, 2
member function, 283
nonreference, 224
copy initialized, 498
pointer, 204
pointer to function, 204
reference, 224
reference to
const
, 226
reference yields lvalue, 226
virtual function, 606
void
, 223
return value
conversion, 223
copy initialized, 498
initialization, 224
local variable, pointer, 225
reference, local variable, 225
tuple
, 721
type checking, 223
unique_ptr
, 471
reverse
, 878
list
andforward_list
, 415
reverse iterator, 401, 407–409, 418
++
(increment), 407
base
, 409
compared to iterator, 409
reverse_copy_if
, 414
reverse_iterator
compared to
iterator
, 408
rfind
, string
, 366
right
, manipulator, 758
rotate
, 878
rotate_copy
, 878
virtual destructor exception, 622
run-time type identification, 825–831, 864
compared to virtual functions, 829
bad_cast
, 826
to poiner, 825
to reference, 826
type-sensitive equality, 829
returns
type_info
, 827
initialization from
string
, 196
copy initialization, uses move constructor, 539
result
++
(increment) postfix, 148
--
(decrement) postfix, 148
function nonreference return type, 224
cast from lvalue, 691
collapsing rule, 688
compared to lvalue reference, 533
function matching, 539
initialization, 532
member function, 546
overloaded, 547
move
, 533
parameter
member function, 544
preserves argument type information, 693
template argument deduction, 687
variable, 533