Чтение онлайн

на главную - закладки

Жанры

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

Менг Ли

Шрифт:

 else cout ‹‹ "No adjacent pairs" ‹‹ endl;

 location = adjacent_find(numbers2, numbers2 + 5);

 if (location != numbers2 + 5)

cout ‹‹ "Found adjacent pair of: " ‹‹ *location ‹‹ " at offset " ‹‹ (location - numbers2) ‹‹ endl;

 else cout ‹‹ "No adjacent pairs" ‹‹ endl;

 return 0;

}

parsrt2.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[] = {"aa", "ff", "dd", "ee", "cc", "bb"};

int main {

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

 vector‹char*› v1(nameSize);

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

 ostream_iterator‹char*› iter(cout, " ");

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

 cout ‹‹ endl;

 partial_sort(v1.begin, v1.begin + nameSize/2, v1.end, str_compare);

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

 cout ‹‹ endl;

 return 0;

}

mset5.cpp

#include ‹iostream.h›

#include ‹stl.h›

bool less_than(int a_, int b_) {

 return a_ ‹ b_;

}

bool greater_than(int a_, int b_) {

 return a_ › b_;

}

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

int main {

 typedef pointer_to_binary_function‹int, int, bool› fn_type;

 typedef multiset‹int, fn_type› mset;

 fn_type f(less_than);

 mset s1(array, array + 4, f);

 mset::const_iterator i = s1.begin;

 cout ‹‹ "Using less_than: " ‹‹ endl;

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

 fn_type g(greater_than);

 mset s2(array, array + 4, g);

 i = s2.begin;

 cout ‹‹ "Using greater_than: " ‹‹ endl;

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

 return 0;

}

mset1.cpp

#include ‹iostream.h›

#include ‹stl.h›

int main {

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

 mset 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;

 set‹int, less‹int› ›::iterator i = s.find(40);

 if (i == s.end) cout ‹‹ "40 Not found" ‹‹ endl;

 else cout ‹‹ "Found " ‹‹ *i ‹‹ endl;

 i = s.find(42);

 if (i == s.end) cout ‹‹ "Not found" ‹‹ endl;

 else cout ‹‹ "Found " ‹‹ *i ‹‹ endl;

 int count = s.erase(42);

 cout ‹‹ "Erased " ‹‹ count ‹‹ " instances" ‹‹ endl;

 return 0;

}

vec2.cpp

#include ‹iostream.h›

#include ‹stl.h›

void print(vector‹double›& vector_) {

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

 cout ‹‹ vector_[i] ‹‹ " ";

 cout ‹‹ endl;

}

int main {

 vector‹double› v1; // Empty vector of doubles.

 v1.push_back(32.1);

 v1.push_back(40.5);

 vector‹double› v2; // Another empty vector of doubles.

 v2.push_back(3.56);

 cout ‹‹ "v1 = ";

 print(v1);

 cout ‹‹ "v2 = ";

 print(v2);

 v1.swap(v2); // Swap the vector's contents.

 cout ‹‹ "v1 = ";

 print(v1);

 cout ‹‹ "v2 = ";

 print(v2);

 v2 = v1; // Assign one vector to another.

 cout ‹‹ "v2 = ";

 print(v2);

 return 0;

}

uniqcpy2.cpp

#include ‹stl.h›

#include ‹iostream.h›

#include ‹string.h›

Поделиться:
Популярные книги

Белые погоны

Лисина Александра
3. Гибрид
Фантастика:
фэнтези
попаданцы
технофэнтези
аниме
5.00
рейтинг книги
Белые погоны

Пипец Котенку! 4

Майерс Александр
4. РОС: Пипец Котенку!
Фантастика:
фэнтези
юмористическое фэнтези
аниме
5.00
рейтинг книги
Пипец Котенку! 4

Маленькая хозяйка большого герцогства

Вера Виктория
2. Герцогиня
Любовные романы:
любовно-фантастические романы
7.80
рейтинг книги
Маленькая хозяйка большого герцогства

Новый Рал 8

Северный Лис
8. Рал!
Фантастика:
попаданцы
аниме
5.00
рейтинг книги
Новый Рал 8

Законы Рода. Том 6

Flow Ascold
6. Граф Берестьев
Фантастика:
юмористическое фэнтези
аниме
5.00
рейтинг книги
Законы Рода. Том 6

Черный Маг Императора 8

Герда Александр
8. Черный маг императора
Фантастика:
юмористическое фэнтези
попаданцы
аниме
5.00
рейтинг книги
Черный Маг Императора 8

Делегат

Астахов Евгений Евгеньевич
6. Сопряжение
Фантастика:
боевая фантастика
постапокалипсис
рпг
5.00
рейтинг книги
Делегат

Целительница моей души

Чекменёва Оксана
Любовные романы:
любовно-фантастические романы
7.29
рейтинг книги
Целительница моей души

На границе империй. Том 4

INDIGO
4. Фортуна дама переменчивая
Фантастика:
космическая фантастика
6.00
рейтинг книги
На границе империй. Том 4

Мастер Разума II

Кронос Александр
2. Мастер Разума
Фантастика:
героическая фантастика
попаданцы
аниме
5.75
рейтинг книги
Мастер Разума II

Здравствуй, 1985-й

Иванов Дмитрий
2. Девяностые
Фантастика:
альтернативная история
5.25
рейтинг книги
Здравствуй, 1985-й

Мужчина моей судьбы

Ардова Алиса
2. Мужчина не моей мечты
Любовные романы:
любовно-фантастические романы
8.03
рейтинг книги
Мужчина моей судьбы

Лишняя дочь

Nata Zzika
Любовные романы:
любовно-фантастические романы
8.22
рейтинг книги
Лишняя дочь

Релокант. Вестник

Ascold Flow
2. Релокант в другой мир
Фантастика:
фэнтези
попаданцы
рпг
5.00
рейтинг книги
Релокант. Вестник