В разделе 17.4 была описана библиотечная архитектура для случайных чисел, а также приведены примеры использования распределений нескольких типов. Библиотека определяет несколько процессоров случайного числа и двадцать распределений различных видов. В этом приложении перечислены все процессоры и распределения.
А.1. Имена и заголовки стандартной библиотеки
В программах этой книги директивы #include
, необходимые для их компиляции, практически нигде не приводились. Для удобства читателей в табл. А.1 перечислены все использованные в программах книги библиотечные имена и заголовки, в которых они определены.
Таблица А.1. Имена и заголовки стандартной библиотеки
Имя | Заголовок |
---|---|
abort |
|
accumulate |
|
allocator |
|
array |
|
auto_ptr |
|
back_inserter |
|
bad_alloc |
|
bad_array_new_length |
|
bad_cast |
|
begin |
|
bernoulli_distribution |
|
bind |
|
bitset |
|
boolalpha |
|
cerr |
|
cin |
|
cmatch |
|
copy |
|
count |
|
count_if |
|
cout |
|
cref |
|
csub_match |
|
dec |
|
default_float_engine |
|
default_random_engine |
|
deque |
|
domain_error |
|
end |
|
endl |
|
ends |
|
equal_range |
|
exception |
|
fill |
|
fill_n |
|
find |
|
find_end |
|
find_first_of |
|
find_if |
|
fixed |
|
flush |
|
for_each |
|
forward |
|
forward_list |
|
free | cstdlib |
front_inserter |
|
fstream |
|
function |
|
get |
|
getline |
|
greater |
|
hash |
|
hex |
|
hexfloat |
|
ifstream |
|
initializer_list |
|
inserter |
|
internal |
|
ios_base |
|
isalpha |
|
islower |
|
isprint |
|
ispunct |
|
isspace |
|
istream |
|
istream_iterator |
|
istringstream |
|
isupper |
|
left |
|
less |
|
less_equal |
|
list |
|
logic_error |
|
lower_bound |
|
lround |
|
make_move_iterator |
|
make_pair |
|
make_shared |
|
make_tuple |
|
malloc | cstdlib |
map |
|
max |
|
max_element |
|
mem_fn |
|
min |
|
move |
|
multimap |
|
multiset |
|
negate |
|
noboolalpha |
|
normal_distribution |
|
noshowbase |
|
noshowpoint |
|
noskipws |
|
not1 |
|
nothrow |
|
nothrow_t |
|
nounitbuf |
|
nouppercase |
|
nth_element |
|
oct |
|
ofstream |
|
ostream |
|
ostream_iterator |
|
ostringstream |
|
out_of_range |
|
pair |
|
partial_sort |
|
placeholders |
|
placeholders::_1 |
|
plus |
|
priority_queue |
|
ptrdiff_t |
|
queue |
|
rand |
|
random_device |
|
range_error |
|
ref |
|
regex |
|
regex_constants |
|
regex_error |
|
regex_match |
|
regex_replace |
|
regex_search |
|
remove_pointer |
|
remove_reference |
|
replace |
|
replace_copy |
|
reverse_iterator |
|
right |
|
runtime_error |
|
scientific |
|
set |
|
set_difference |
|
set_intersection |
|
set_union |
|
setfill |
|
setprecision |
|
setw |
|
shared_ptr |
|
showbase |
|
showpoint |
|
size_t |
|
skipws |
|
smatch |
|
sort |
|
sqrt |
|
sregex_iterator |
|
ssub_match |
|
stable_sort |
|
stack |
|
stoi |
|
strcmp |
|
strcpy |
|
string |
|
stringstream |
|
strlen |
|
strncpy |
|
strtod |
|
swap |
|
terminate |
|
time |
|
tolower |
|
toupper |
|
transform |
|
tuple |
|
tuple_element |
|
tuple_size |
|
type_info |
|
unexpected |
|
uniform_int_distribution |
|
uniform_real_distribution |
|
uninitialized_copy |
|
uninitialized_fill |
|
unique |
|
unique_copy |
|
unique_ptr |
|
unitbuf |
|
unordered_map |
|
unordered_multimap |
|
unordered_multiset |
|
unordered_set |
|
upper_bound |
|
uppercase |
|
vector |
|
weak_ptr |
|
А.2. Краткий обзор алгоритмов
В библиотеке определено более 100 алгоритмов. Чтобы научиться их использовать, следует понять структуру, а не запоминать подробности применения каждого из них. Лежащая в их основе архитектура описана в главе 10, а в этом разделе описан каждый из алгоритмов.
• beg
и end
— итераторы, обозначающие диапазон элементов (см. раздел 9.2.1). Почти все алгоритмы работают с последовательностями, обозначенными итераторами beg
и end
.