My-library.info
Все категории

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

На электронном книжном портале my-library.info можно читать бесплатно книги онлайн без регистрации, в том числе Александр Степанов - РУКОВОДСТВО ПО СТАНДАРТНОЙ БИБЛИОТЕКЕ ШАБЛОНОВ (STL). Жанр: Программирование издательство -, год 2004. В онлайн доступе вы получите полную версию книги с кратким содержанием для ознакомления, сможете читать аннотацию к книге (предисловие), увидеть рецензии тех, кто произведение уже прочитал и их экспертное мнение о прочитанном.
Кроме того, в библиотеке онлайн my-library.info вы найдете много новинок, которые заслуживают вашего внимания.

Название:
РУКОВОДСТВО ПО СТАНДАРТНОЙ БИБЛИОТЕКЕ ШАБЛОНОВ (STL)
Издательство:
-
ISBN:
нет данных
Год:
-
Дата добавления:
17 сентябрь 2019
Количество просмотров:
233
Читать онлайн
Александр Степанов - РУКОВОДСТВО ПО СТАНДАРТНОЙ БИБЛИОТЕКЕ ШАБЛОНОВ (STL)

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

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

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

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

char* names[] = {"Brett", "Graham", "Jack", "Mike", "Todd"};


int main() {

 const unsigned namesCt = sizeof(names)/sizeof(names[0]);

 cout ‹‹ *max_element(names, names + namesCt, str_compare) ‹‹ endl;

 return 0;

}

minelem2.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;

}


char* names[] = {"Brett", "Graham", "Jack", "Mike", "Todd"};


int main() {

 const unsigned namesCt = sizeof(names)/sizeof(names[0]);

 cout ‹‹ *min_element(names, names + namesCt, str_compare) ‹‹ endl;

 return 0;

}

partsum2.cpp

#include ‹stl.h›

#include ‹iostream.h›


int main() {

 vector‹int› v1(5);

 iota(v1.begin(), v1.end(), 1);

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

 partial_sum(v1.begin(), v1.end(), v2.begin(), times‹int›());

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

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

 cout ‹‹ endl;

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

 cout ‹‹ endl;

 return 0;

}

istmit1.cpp

#include ‹iostream.h›

#include ‹stl.h›


int main() {

 char buffer[100];

 int i = 0;

 cin.unsetf(ios::skipws); // Disable white-space skipping.

 cout ‹‹ "Please enter a string: ";

 istream_iterator‹char, ptrdiff_t› s(cin);

 while (*s!= 'n') buffer[i++] = *s++;

 buffer[i] = ''; // Null terminate buffer.

 cout ‹‹ "read " ‹‹ buffer ‹‹ endl;

 return 0;

}

findif0.cpp

#include ‹stl.h›

#include ‹iostream.h›


bool odd(int a_) {

 return a_ % 2;

}


int numbers[6] = {2, 4, 8, 15, 32, 64};


int main() {

 int* location = find_if(numbers, numbers + 6, odd);

 if (location != numbers + 6)

  cout ‹‹ "Value " ‹‹ *location ‹‹ " at offset " ‹‹ (location - numbers) ‹‹ " is odd" ‹‹ endl;

 return 0;

}

pheap1.cpp

#include ‹stl.h›

#include ‹iostream.h›


int main() {

 vector‹int› v;


 v.push_back(1);

 v.push_back(20);

 v.push_back(4);

 make_heap(v.begin(), v.end());


 v.push_back(7);

 push_heap(v.begin(), v.end());


 sort_heap(v.begin(), v.end());

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

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

 cout ‹‹ endl;


 return 0;

}

stblsrt2.cpp

#include ‹stl.h›

#include ‹iostream.h›

#include ‹string.h›


bool string_less(const char* a_, const char* b_) {

 return ::strcmp(a_, b_) ‹ 0 ? 1 : 0;

}


char* letters[6] = {"bb", "aa", "ll", "dd", "qq", "cc"};


int main() {

 stable_sort(letters, letters + 6, string_less);

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

 cout ‹‹ endl;

 return 0;

}

nextprm1.cpp

#include ‹stl.h›

#include ‹iostream.h›


int main() {

 vector‹int› v1(3);

 iota(v1.begin(), v1.end(), 0);

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

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

 cout ‹‹ endl;

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

  next_permutation(v1.begin(), v1.end());

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

  cout ‹‹ endl;

 }

 return 0;

}

prevprm1.cpp

#include ‹stl.h›

#include ‹iostream.h›


int main() {

 vector‹int› v1(3);

 iota(v1.begin(), v1.end(), 0);

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

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

 cout ‹‹ endl;

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

  prev_permutation(v1.begin(), v1.end());

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

  cout ‹‹ endl;

 }

 return 0;

}

rndshuf1.cpp

#include ‹stl.h›

#include ‹iostream.h›


int main() {

 vector‹int› v1(10);

 iota(v1.begin(), v1.end(), 0);

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

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

 cout ‹‹ endl;

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

  random_shuffle(v1.begin(), v1.end());

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

  cout ‹‹ endl;

 }

 return 0;

}

ptrbinf1.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, pointer_to_binary_function‹int, int, int›(sum));

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

 return 0;

}

iter2.cpp

#include ‹iostream.h›

#include ‹stl.h›


void print (const vector‹const char*›& v_) {

 vector‹const char*›::const_iterator i;

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

}


int main() {

 vector‹const char*› v; // Vector of character strings.

 v.push_back((char*) "zippy");

 v.push_back((char*) "motorboy");

 print (v);

 return 0;

}

partsum1.cpp

#include ‹stl.h›

#include ‹iostream.h›


int main() {

 vector‹int› v1(10);

 iota(v1.begin(), v1.end(), 0);

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

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

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

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

 cout ‹‹ endl;

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

 cout ‹‹ endl;

 return 0;

}

replif1.cpp

#include ‹stl.h›

#include ‹iostream.h›


bool odd(int a_) {

 return a_ % 2;

}


int main() {

 vector‹int› v1(10);

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

  v1[i] = i % 5;

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

 }

 cout ‹‹ endl;

 replace_if(v1.begin(), v1.end(), odd, 42);

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

 cout ‹‹ endl;

 return 0;

}

mset4.cpp

#include ‹iostream.h›

#include ‹stl.h›


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


int main() {

 typedef multiset‹int, less‹int› › mset;

 mset s(array, array + 9);

 pair‹mset::const_iterator, mset::const_iterator› p = s.equal_range(3);

 cout ‹‹ "lower bound = " ‹‹ *(p.first) ‹‹ endl;

 cout ‹‹ "upper bound = " ‹‹ *(p.second) ‹‹ endl;

 return 0;

}

iter3.cpp

#include ‹iostream.h›

#include ‹stl.h›


int main() {

 vector‹const char*› v; // Vector of character strings.

 v.push_back((char*) "zippy"); // First element.

 v.push_back((char*) "motorboy"); // Second element.

 vector‹const char*›::reverse_iterator i;

 for (i = v.rbegin(); i!= v.rend(); i++) cout ‹‹ *i ‹‹ endl; // Display item.

 return 0;

}

list2.cpp

#include ‹iostream.h›

#include ‹stl.h›


int array1[] = {1, 16};

int array2[] = {4, 9};


int main() {

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

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

 list‹int›::iterator i = l1.begin();

 i++;

 l1.splice(i, l2, l2.begin(), l2.end());

 i = l1.begin();

 while (i != l1.end()) cout ‹‹ *i++ ‹‹ endl;

 return 0;

}

set1.cpp

#include ‹iostream.h›

#include ‹stl.h›


int main() {

 set‹int, less‹int› › s;

 cout ‹‹ "count(42) = " ‹‹ s.count(42) ‹‹ endl;

 s.insert(42);

 cout ‹‹ "count(42) = " ‹‹ s.count(42) ‹‹ endl;

 s.insert(42);

 cout ‹‹ "count(42) = " ‹‹ s.count(42) ‹‹ endl;

 int count = s.erase(42);

 cout ‹‹ count ‹‹ " elements erased" ‹‹ endl;

 return 0;

}

list1.cpp

#include ‹iostream.h›

#include ‹stl.h›


int array1[] = {9, 16, 36};

int array2[] = {1, 4};


int main() {

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

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

 list‹int›::iterator i1 = l1.begin();

 l1.splice(i1, l2);

 list‹int›::iterator i2 = l1.begin();

 while (i2!= l1.end()) cout ‹‹ *i2++ ‹‹ endl;

 return 0;

}

alg5.cpp

#include ‹iostream.h›

#include ‹stl.h›


int main() {

 list‹int› years;

 years.push_back(1962);

 years.push_back(1992);

 years.push_back(2001);

 years.push_back(1999);

 sort(years.begin(), years.end()); // Causes linker error.

 list‹int›::iterator i;

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

 return 0;

}

eqlrnge0.cpp

#include ‹stl.h›

#include ‹iostream.h›


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


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

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


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

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

Прокомментировать
Подтвердите что вы не робот:*
Подтвердите что вы не робот:*
Все материалы на сайте размещаются его пользователями.
Администратор сайта не несёт ответственности за действия пользователей сайта..
Вы можете направить вашу жалобу на почту librarybook.ru@gmail.com или заполнить форму обратной связи.