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

Интервал:

Закладка:

Сделать

return 0;

}

unegate1.cpp

#include ‹iostream.h›

#include ‹stl.h›

struct odd: public unary_function‹int, bool› {

odd() {}

bool operator() (int n_) const {return (n_ % 2) - 1;}

};

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

int main() {

int* p = find_if(array, array + 3, unary_negate‹odd›(odd()));

if (p != array + 3)

cout ‹‹ *p ‹‹ endl;

return 0;

}

alg4.cpp

#include ‹iostream.h›

#include ‹stl.h›

int main() {

vector‹int› years;

years.push_back(1962);

years.push_back(1992);

years.push_back(2001);

years.push_back(1999);

sort(years.begin(), years.end());

vector‹int›::iterator i;

for (i = years.begin(); i!= years.end(); i++)

cout ‹‹ *i ‹‹ endl;

return 0;

}

countif1.cpp

#include ‹stl.h›

#include ‹iostream.h›

int odd(int a_) {

return a_ % 2;

}

int main() {

vector‹int› numbers(100);

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

int elements = 0;

count_if(numbers.begin(), numbers.end(), odd, elements);

cout ‹‹ "Found " ‹‹ elements ‹‹ " odd elements." ‹‹ endl;

return 0;

}

lwrbnd1.cpp

#include ‹stl.h›

#include ‹iostream.h›

int main() {

vector‹int› v1(20);

for (int i = 0; i ‹ v1.size(); i++) {

v1[i] = i/4;

cout ‹‹ v1[i] ‹‹ ' ';

}

int* location = lower_bound(v1.begin(), v1.end(), 3);

cout ‹‹ "\n3 can be inserted at index: " ‹‹ (location - v1.begin()) ‹‹ endl;

return 0;

}

lexcmp1.cpp

#include ‹stl.h›

#include ‹iostream.h›

const unsigned size = 6;

char n1[size] = "shoe";

char n2[size] = "shine";

int main() {

bool before = lexicographical_compare(n1, n1 + size, n2, n2 + size);

if (before) cout ‹‹ n1 ‹‹ " is before " ‹‹ n2 ‹‹ endl;

else cout ‹‹ n2 ‹‹ " is before " ‹‹ n1 ‹‹ endl;

return 0;

}

copyb.cpp

#include ‹stl.h›

#include ‹iostream.h›

int main() {

vector‹int› v1(10);

for (int i = 0; i ‹ v1.size(); i++) v1[i] = i;

vector‹int› v2(v1.size());

copy_backward(v1.begin(), v1.end(), v2.end());

ostream_iterator‹int› iter(cout, " ");

copy(v2.begin(), v2.end(), iter);

cout ‹‹ endl;

return 0;

}

ptrbinf2.cpp

#include ‹iostream.h›

#include ‹stl.h›

int sum(int x_, int y_) {

return x_ + y_;

}

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

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

int main() {

int output[4];

transform(input1, input1 + 4, input2, output, ptr_fun(sum));

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

return 0;

}

copyb0.cpp

#include ‹stl.h›

#include ‹iostream.h›

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

int main() {

int result[5];

copy_backward(numbers, numbers + 5, result + 5);

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

cout ‹‹ endl;

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

cout ‹‹ endl;

return 0;

}

binsert1.cpp

#include ‹iostream.h›

#include ‹stl.h›

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

int main() {

vector‹char*› names;

copy(array, array + 3, back_insert_iterator‹vector‹char*› ›(names));

vector‹char*›::iterator i;

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

return 0;

}

unegate2.cpp

#include ‹iostream.h›

#include ‹stl.h›

struct odd: public unary_function‹int, bool› {

odd() {}

bool operator() (int n_) const {return (n_ % 2) - 1;}

};

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

int main() {

int* p = find_if(array, array + 3, not1 (odd()));

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

return 0;

}

revcopy1.cpp

#include ‹stl.h›

#include ‹iostream.h›

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

int main() {

int result[6];

reverse_copy(numbers, numbers + 6, result);

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

cout ‹‹ endl;

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

cout ‹‹ endl;

return 0;

}

finsert1.cpp

#include ‹iostream.h›

#include ‹stl.h›

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

int main() {

deque‹char*› names;

copy(array, array + 3, front_insert_iterator‹deque ‹char*› ›(names));

deque‹char*›::iterator i;

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

return 0;

}

remcpif1.cpp

#include ‹stl.h›

#include ‹iostream.h›

bool odd(int a_) {

return a_ % 2;

}

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

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

int main() {

remove_copy_if(numbers, numbers + 6, result, odd);

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

cout ‹‹ endl;

return 0;

}

inplmrg1.cpp

#include ‹stl.h›

#include ‹iostream.h›

int numbers[6] = {1, 10, 42, 3, 16, 32};

int main() {

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

cout ‹‹ endl;

inplace_merge(numbers, numbers + 3, numbers + 6);

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

cout ‹‹ endl;

return 0;

}

list4.cpp

#include ‹iostream.h›

#include ‹stl.h›

int array1[] = {1, 3, 6, 7};

int array2[] = {2, 4};

int main() {

list‹int› l1(array1, array1 + 4);

list‹int› l2(array2, array2 + 2);

l1.merge(l2);

for (list‹int›::iterator i = l1.begin(); i != l1.end(); i++) cout ‹‹ *i;

cout ‹‹ endl;

return 0;

}

revbit1.cpp

#include ‹iostream.h›

#include ‹stl.h›

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

int main() {

list‹int› v(array, array + 4);

reverse_bidirectional_iterator‹list‹int›::iterator, int, list‹int›::reference, list‹int›::difference_type› r(v.end());

while (r != v.begin())

cout ‹‹ *r++ ‹‹ endl;

return 0;

}

copy3.cpp

#include ‹stl.h›

#include ‹iostream.h›

int main() {

vector‹int› v1(10);

for (int i = 0; i ‹ v1.size(); i++) v1[i] = i;

vector‹int› v2(10);

copy(v1.begin(), v1.end(), v2.begin());

ostream_iterator‹int› iter(cout, " ");

copy(v2.begin(), v2.end(), iter);

cout ‹‹ endl;

return 0;

}

merge0.cpp

#include ‹stl.h›

#include ‹iostream.h›

int numbers1[5] = {1, 6, 13, 25, 101};

int numbers2[5] = {-5, 26, 36, 46, 99};

int main() {

int result[10];

merge(numbers1, numbers1 + 5, numbers2, numbers2 + 5, result);

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

cout ‹‹ endl;

return 0;

}

reviter1.cpp

#include ‹iostream.h›

#include ‹stl.h›

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

int main() {

vector‹int› v(array, array + 4);

stl_reverse_iterator‹vector‹int›::iterator, int, vector‹int›::reference, vector‹int›::difference_type› r (v.end());

while (r!= v.begin()) cout ‹‹ *r++ ‹‹ endl;

return 0;

}

find1.cpp

#include ‹stl.h›

#include ‹iostream.h›

int years[] = {1942, 1952, 1962, 1972, 1982, 1992};

int main() {

const unsigned yearCount = sizeof(years) / sizeof(years[0]);

int* location = find(years, years + yearCount, 1972);

cout ‹‹ "Found 1972 at offset " ‹‹ (location - years) ‹‹ endl;

return 0;

}

trnsfrm1.cpp

#include ‹stl.h›

#include ‹iostream.h›

int negate_int(int a_) {

return -a_;

}

int numbers[6] = {-5, -1, 0, 1, 6, 11};

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

Интервал:

Закладка:

Сделать


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

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




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


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


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

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