РУКОВОДСТВО ПО СТАНДАРТНОЙ БИБЛИОТЕКЕ ШАБЛОНОВ (STL)
Шрифт:
}
return 0;
}
copy1.cpp
#include ‹stl.h›
#include ‹iostream.h›
#include ‹string.h›
char string[23] = "A string to be copied.";
int main {
char result[23];
copy(string, string + 23, result);
cout ‹‹ " Src: " ‹‹ string ‹‹ "\nDest: " ‹‹ result ‹‹ endl;
return 0;
}
find0.cpp
#include ‹stl.h›
#include ‹iostream.h›
int numbers[10] = {0, 1, 4, 9, 16, 25, 36, 49, 64};
int main {
int* location;
location = find(numbers, numbers + 10, 25);
cout ‹‹ "Found 25 at offset " ‹‹ (location - numbers) ‹‹ endl;
return 0;
}
partsum0.cpp
#include ‹stl.h›
#include ‹iostream.h›
int numbers[6] = {1, 2, 3, 4, 5, 6};
int main {
int result[6];
partial_sum(numbers, numbers + 6, result);
for (int i = 0; i ‹ 6; i ++) cout ‹‹ result[i] ‹‹ ' ';
cout ‹‹ endl;
return 0;
}
bvec1.cpp
#include ‹iostream.h›
#include ‹stl.h›
int main {
bit_vector b(3);
for (int i = 0; i ‹ b.size; i++) cout ‹‹ b[i];
cout ‹‹ endl;
b[0] = b[2] = 1;
for (i = 0; i ‹ b.size; i++) cout ‹‹ b[i];
cout ‹‹ endl;
return 0;
}
bind2nd1.cpp
#include ‹iostream.h›
#include ‹stl.h›
int array[3] = {1, 2, 3};
int main {
replace_if(array, array + 3, binder2nd‹greater‹int› ›(greater‹int›, 2), 4);
for (int i = 0; i ‹ 3; i++) cout ‹‹ array[i] ‹‹ endl;
return 0;
}
bind1st1.cpp
#include ‹iostream.h›
#include ‹stl.h›
int array[3] = {1, 2, 3};
int main {
int* p = remove_if(array, array + 3, binder1st‹less‹int› ›(less‹int›, 2));
for (int* i = array; i != p; i++) cout ‹‹ *i ‹‹ endl;
return 0;
}
reviter2.cpp
#include ‹iostream.h›
#include ‹stl.h›
int array[] = {1, 5, 2, 3};
int main {
vector‹int› v(array, array + 4);
vector‹int›::reverse_iterator r;
for (r = v.rbegin; r != v.rend; r++) cout ‹‹ *r ‹‹ endl;
return 0;
}
copy2.cpp
#include ‹stl.h›
#include ‹iostream.h›
int main {
vector‹int› v(10);
for (int i = 0; i ‹ v.size; i++) v[i] = i;
ostream_iterator‹int› iter(cout, " ");
copy(v.begin, v.end, iter);
cout ‹‹ endl;
return 0;
}
max2.cpp
#include ‹stl.h›
#include ‹iostream.h›
#include ‹string.h›
bool str_compare(const char* a_, const char* b_) {
return ::strcmp(a_, b_) ‹ 0 ? 1 : 0;
}
int main {
cout ‹‹ max("shoe", "shine", str_compare) ‹‹ endl;
return 0;
}
min2.cpp
#include ‹stl.h›
#include ‹iostream.h›
#include ‹string.h›
bool str_compare(const char* a_, const char* b_) {
return ::strcmp(a_, b_) ‹ 0 ? 1 : 0;
}
int main {
cout ‹‹ min("shoe", "shine", str_compare) ‹‹ endl;
return 0;
}
parsrt0.cpp
#include ‹stl.h›
#include ‹iostream.h›
int numbers[6] = {5, 2, 4, 3, 1, 6};
int main {
partial_sort(numbers, numbers + 3, numbers + 6);
for (int i = 0; i ‹ 6; i++) cout ‹‹ numbers[i] ‹‹ ' ';
cout ‹‹ endl;
return 0;
}
partsrt0.cpp
#include ‹stl.h›
#include ‹iostream.h›
int numbers[6] = {5, 2, 4, 3, 1, 6};
int main {
partial_sort(numbers, numbers + 3, numbers + 6);
for (int i = 0; i ‹ 6; i++) cout ‹‹ numbers[i] ‹‹ ' ';
cout ‹‹ endl;
return 0;
}
bnegate1.cpp
#include ‹iostream.h›
#include ‹stl.h›
int array[4] = {4, 9, 7, 1};
int main {
sort(array, array + 4, binary_negate‹greater‹int› ›(greater‹int›));
for (int i = 0; i ‹ 4; i++) cout ‹‹ array[i] ‹‹ endl;
return 0;
}
nthelem0.cpp
#include ‹stl.h›
#include ‹iostream.h›
int numbers[6] = {5, 2, 4, 1, 0, 3};
int main {
nth_element(numbers, numbers + 3, numbers + 6);
for (int i = 0; i ‹ 6; i++) cout ‹‹ numbers[i] ‹‹ ' ';
cout ‹‹ endl;
return 0;
}
revbit2.cpp
#include ‹iostream.h›
#include ‹stl.h›
int array[] = {1, 5, 2, 3};
int main {
list‹int› v(array, array + 4);
list‹int›::reverse_iterator r;
for (r = v.rbegin; r != v.rend; r++) cout ‹‹ *r ‹‹ endl;
return 0;
}
count0.cpp
#include ‹stl.h›
#include ‹iostream.h›
int numbers[10] = {1, 2, 4, 1, 2, 4, 1, 2, 4, 1};
int main {
int result = 0;
count(numbers, numbers + 10, 1, result);
cout ‹‹ "Found " ‹‹ result ‹‹ " 1's." ‹‹ endl;
return 0;
}
negate.cpp
#include ‹iostream.h›
#include ‹stl.h›
int input[3] = {1, 2, 3};
int main {
int output[3];
transform(input, input + 3, output, negate‹int›);
for (int i = 0; i ‹ 3; i++) cout ‹‹ output[i] ‹‹ endl;
return 0;
}
pqueue1.cpp
Поделиться:
Популярные книги
Темный Лекарь 5
5. Темный Лекарь
Фантастика:
фэнтези
аниме
5.00
рейтинг книги
Охота на разведенку
Любовные романы:
современные любовные романы
эро литература
6.76
рейтинг книги
Неудержимый. Книга XVI
16. Неудержимый
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Газлайтер. Том 18
18. История Телепата
Фантастика:
попаданцы
аниме
фэнтези
5.00
рейтинг книги
Ищу жену для своего мужа
Любовные романы:
любовно-фантастические романы
6.17
рейтинг книги
На границе империй. Том 8. Часть 2
13. Фортуна дама переменчивая
Фантастика:
космическая фантастика
попаданцы
5.00
рейтинг книги
По воле короля
Любовные романы:
любовно-фантастические романы
5.00
рейтинг книги
Черный Маг Императора 9
9. Черный маг императора
Фантастика:
юмористическое фэнтези
попаданцы
аниме
5.00
рейтинг книги
Последняя Арена 8
8. Последняя Арена
Фантастика:
боевая фантастика
рпг
5.00
рейтинг книги
Измена. Вторая жена мужа
Любовные романы:
современные любовные романы
5.00
рейтинг книги
Возмездие
4. О чем молчат могилы
Фантастика:
фэнтези
7.47
рейтинг книги
Выстрел на Большой Морской
4. Сыщик Его Величества
Детективы:
исторические детективы
полицейские детективы
8.64
рейтинг книги
Ты - наша
1. Наша
Любовные романы:
современные любовные романы
эро литература
5.00
рейтинг книги
Повелитель механического легиона. Том III
3. Повелитель механического легиона
Фантастика:
фэнтези
аниме
5.00