Александр Степанов - РУКОВОДСТВО ПО СТАНДАРТНОЙ БИБЛИОТЕКЕ ШАБЛОНОВ (STL)

Тут можно читать онлайн Александр Степанов - РУКОВОДСТВО ПО СТАНДАРТНОЙ БИБЛИОТЕКЕ ШАБЛОНОВ (STL) - бесплатно полную версию книги (целиком) без сокращений. Жанр: comp-programming, издательство МОСКОВСКИЙ ГОСУДАРСТВЕННЫЙ ИНСТИТУТ РАДИОТЕХНИКИ, ЭЛЕКТРОНИКИ И АВТОМАТИКИ (ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ), год 1999. Здесь Вы можете читать полную версию (весь текст) онлайн без регистрации и SMS на сайте лучшей интернет библиотеки ЛибКинг или прочесть краткое содержание (суть), предисловие и аннотацию. Так же сможете купить и скачать торрент в электронном формате fb2, найти и слушать аудиокнигу на русском языке или узнать сколько частей в серии и всего страниц в публикации. Читателям доступно смотреть обложку, картинки, описание и отзывы (комментарии) о произведении.
  • Название:
    РУКОВОДСТВО ПО СТАНДАРТНОЙ БИБЛИОТЕКЕ ШАБЛОНОВ (STL)
  • Автор:
  • Жанр:
  • Издательство:
    МОСКОВСКИЙ ГОСУДАРСТВЕННЫЙ ИНСТИТУТ РАДИОТЕХНИКИ, ЭЛЕКТРОНИКИ И АВТОМАТИКИ (ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ)
  • Год:
    1999
  • Город:
    Москва
  • ISBN:
    нет данных
  • Рейтинг:
    4.5/5. Голосов: 81
  • Избранное:
    Добавить в избранное
  • Отзывы:
  • Ваша оценка:
    • 100
    • 1
    • 2
    • 3
    • 4
    • 5

Александр Степанов - РУКОВОДСТВО ПО СТАНДАРТНОЙ БИБЛИОТЕКЕ ШАБЛОНОВ (STL) краткое содержание

РУКОВОДСТВО ПО СТАНДАРТНОЙ БИБЛИОТЕКЕ ШАБЛОНОВ (STL) - описание и краткое содержание, автор Александр Степанов, читайте бесплатно онлайн на сайте электронной библиотеки LibKing.Ru

РУКОВОДСТВО ПО СТАНДАРТНОЙ БИБЛИОТЕКЕ ШАБЛОНОВ (STL) - читать онлайн бесплатно полную версию (весь текст целиком)

РУКОВОДСТВО ПО СТАНДАРТНОЙ БИБЛИОТЕКЕ ШАБЛОНОВ (STL) - читать книгу онлайн бесплатно, автор Александр Степанов
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

int main() {

int result[6];

transform(numbers, numbers + 6, result, negate_int);

for (int i = 0; i ‹ 6; i++) cout ‹‹ result[i] ‹‹ ' ';

cout ‹‹ endl;

return 0;

}

binsert2.cpp

#include ‹iostream.h›

#include ‹stl.h›

char* array[] = {"laurie", "jennifer", "leisa"};

int main() {

vector‹char*› names;

copy(array, array + 3, back_inserter(names));

vector‹char*›::iterator i;

for (i = names.begin(); i!= names.end(); i++) cout ‹‹ *i ‹‹ endl;

return 0;

}

finsert2.cpp

#include ‹iostream.h›

#include ‹stl.h›

char* array[] = {"laurie", "jennifer", "leisa"};

int main() {

deque‹char*› names;

copy(array, array + 3, front_inserter(names));

deque‹char*›::iterator i;

for (i = names.begin(); i!= names.end(); i++) cout ‹‹ *i ‹‹ endl;

return 0;

}

mset2.cpp

#include ‹iostream.h›

#include ‹stl.h›

char* names[] = {"dave", "alf", "chas", "bob", "ed", "chas"};

int main() {

typedef multiset‹char*, less_s› mset;

mset s;

s.insert(names, names + 6);

for (mset::iterator i = s.begin(); i!= s.end(); i++) cout ‹‹ *i ‹‹ endl;

return 0;

}

ostmit.cpp

#include ‹iostream.h›

#include ‹stl.h›

int array[] = {1, 5, 2, 4};

int main() {

char* string = "hello";

ostream_iterator‹char› it1(cout);

copy(string, string + 5, it1);

cout ‹‹ endl;

ostream_iterator‹int› it2(cout);

copy(array, array + 4, it2);

cout ‹‹ endl;

return 0;

}

ptrunf1.cpp

#include ‹iostream.h›

#include ‹stl.h›

bool even(int n_) {

return (n_ % 2) == 0;

}

int array[3] = {1, 2, 3};

int main() {

int* p = find_if(array, array + 3, pointer_to_unary_function‹int, bool›(even));

if (p != array + 3) cout ‹‹ *p ‹‹ " is even" ‹‹ endl;

return 0;

}

func1.cpp

#include ‹iostream.h›

#include ‹stl.h›

bool bigger(int i_) {

return i_ › 3;

}

int main() {

vector‹int› v;

v.push_back(4);

v.push_back(1);

v.push_back(5);

int n = 0;

count_if(v.begin(), v.end(), bigger, n);

cout ‹‹ "Number greater than 3 = " ‹‹ n ‹‹ endl;

return 0;

}

stblptn0.cpp

#include ‹stl.h›

#include ‹iostream.h›

bool less_10(int a_) {

return a_ ‹ 10 ? 1 : 0;

}

int numbers[6] = {10, 5, 11, 20, 6, -2};

int main() {

stable_partition(numbers, numbers + 6, less_10);

for (int i = 0; i ‹ 6; i++) cout ‹‹ numbers[i] ‹‹ ' ';

cout ‹‹ endl;

return 0;

}

setunon0.cpp

#include ‹stl.h›

#include ‹iostream.h›

int v1[3] = {13, 18, 23};

int v2[4] = {10, 13, 17, 23};

int result[7] = {0, 0, 0, 0, 0, 0, 0};

int main() {

set_union(v1, v1 + 3, v2, v2 + 4, result);

for (int i = 0; i ‹ 7; i++) cout ‹‹ result[i] ‹‹ ' ';

cout ‹‹ endl;

return 0;

}

mkheap1.cpp

#include ‹stl.h›

#include ‹iostream.h›

int numbers[6] = {5, 10, 4, 13, 11, 19};

int main() {

make_heap(numbers, numbers + 6, greater‹int›());

for (int i = 6; i ›= 1; i--) {

cout ‹‹ numbers[0] ‹‹ endl;

pop_heap(numbers, numbers + i, greater‹int›());

}

return 0;

}

setintr0.cpp

#include ‹stl.h›

#include ‹iostream.h›

int v1[3] = {13, 18, 23};

int v2[4] = {10, 13, 17, 23};

int result[4] = {0, 0, 0, 0};

int main() {

set_intersection(v1, v1 + 3, v2, v2 + 4, result);

for (int i = 0; i ‹ 4; i++) cout ‹‹ result[i] ‹‹ ' ';

cout ‹‹ endl;

return 0;

}

logicand.cpp

#include ‹iostream.h›

#include ‹stl.h›

bool input1[4] = {1, 1, 0, 1};

bool input2[4] = {0, 1, 0, 0};

int main() {

int output[4];

transform(input1, input1 + 4, input2, output, logical_and‹bool›());

for (int i = 0; i ‹ 4; i++) cout ‹‹ output[i] ‹‹ endl;

return 0;

}

logicor.cpp

#include ‹iostream.h›

#include ‹stl.h›

bool input1[4] = {1, 1, 0, 1};

bool input2[4] = {0, 1, 0, 0};

int main() {

int output[4];

transform(input1, input1 + 4, input2, output, logical_or‹bool›());

for (int i = 0; i ‹ 4; i++) cout ‹‹ output[i] ‹‹ endl;

return 0;

}

nequal.cpp

#include ‹iostream.h›

#include ‹stl.h›

int input1[4] = {1, 7, 2, 2};

int input2[4] = {1, 6, 2, 3};

int main() {

int output[4];

transform(input1, input1 + 4, input2, output, not_equal_to‹int›());

for (int i = 0; i ‹ 4; i++) cout ‹‹ output[i] ‹‹ endl;

return 0;

}

ptition0.cpp

#include ‹stl.h›

#include ‹iostream.h›

int less_10(int a_) {

return a_ ‹ 10 ? 1 : 0;

}

int numbers[6] = {6, 12, 3, 10, 1, 20};

int main() {

partition(numbers, numbers + 6, less_10);

for (int i = 0; i ‹ 6; i++) cout ‹‹ numbers[i] ‹‹ ' ';

cout ‹‹ endl;

return 0;

}

inrprod0.cpp

#include ‹stl.h›

#include ‹iostream.h›

#include ‹string.h›

int vector1[5] = {1, 2, 3, 4, 5};

int vector2[5] = {1, 2, 3, 4, 5};

int main() {

int result;

result = inner_product(vector1, vector1 + 5, vector2, 0);

cout ‹‹ "Inner product = " ‹‹ result ‹‹ endl;

return 0;

}

func3.cpp

#include ‹iostream.h›

#include ‹stl.h›

int main() {

vector‹int›v;

v.push_back(4);

v.push_back(1);

v.push_back(5);

sort(v.begin(), v.end(), greater‹int›());

vector‹int›::iterator i;

for (i = v.begin(); i != v.end(); i++) cout ‹‹ *i ‹‹ endl;

return 0;

}

modulus.cpp

#include ‹iostream.h›

#include ‹stl.h›

int input1[4] = {6, 8, 10, 2};

int input2[4] = {4, 2, 11, 3};

int main() {

int output[4];

transform(input1, input1 + 4, input2, output, modulus‹int›());

for (int i = 0; i ‹ 4; i++) cout ‹‹ output[i] ‹‹ endl;

return 0;

}

uprbnd1.cpp

#include ‹stl.h›

#include ‹iostream.h›

int main() {

int array[20];

for (int i = 0; i ‹ 20; i++) {

array[i] = i/4;

cout ‹‹ array[i] ‹‹ ' ';

}

cout ‹‹ "\n3 can be inserted at index: "

‹‹ upper_bound(array, array + 20, 3) - array ‹‹ endl;

return 0;

}

equalto.cpp

#include ‹iostream.h›

#include ‹stl.h›

int input1[4] = {1, 7, 2, 2};

int input2[4] = {1, 6, 2, 3};

int main() {

int output[4];

transform(input1, input1 + 4, input2, output, equal_to‹int›());

for (int i = 0; i ‹ 4; i++) cout ‹‹ output[i] ‹‹ endl;

return 0;

}

count1.cpp

#include ‹stl.h›

#include ‹iostream.h›

int main() {

vector‹int› numbers(100);

for (int i = 0; i ‹ 100; i++) numbers[i] = i % 3;

int elements = 0;

count(numbers.begin(), numbers.end(), 2, elements);

cout ‹‹ "Found " ‹‹ elements ‹‹ " 2's." ‹‹ endl;

return 0;

}

uniqcpy1.cpp

#include ‹stl.h›

#include ‹iostream.h›

int numbers[8] = {0, 1, 1, 2, 2, 2, 3, 4};

int result[8] = {0, 0, 0, 0, 0, 0, 0, 0};

int main() {

unique_copy(numbers, numbers + 8, result);

for (int i = 0; i ‹ 8; i++) cout ‹‹ result[i] ‹‹ ' ';

cout ‹‹ endl;

return 0;

}

minus.cpp

#include ‹iostream.h›

#include ‹stl.h›

int input1[4] = {1, 5, 7, 8};

int input2[4] = {1, 4, 8, 3};

int main() {

int output[4];

transform(input1, input1 + 4, input2, output, minus‹int›());

Читать дальше
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать


Александр Степанов читать все книги автора по порядку

Александр Степанов - все книги автора в одном месте читать по порядку полные версии на сайте онлайн библиотеки LibKing.




РУКОВОДСТВО ПО СТАНДАРТНОЙ БИБЛИОТЕКЕ ШАБЛОНОВ (STL) отзывы


Отзывы читателей о книге РУКОВОДСТВО ПО СТАНДАРТНОЙ БИБЛИОТЕКЕ ШАБЛОНОВ (STL), автор: Александр Степанов. Читайте комментарии и мнения людей о произведении.


Понравилась книга? Поделитесь впечатлениями - оставьте Ваш отзыв или расскажите друзьям

Напишите свой комментарий
x