Читаем Руководство по стандартной библиотеке шаблонов (STL) полностью

 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;

}

<p>mset5.cpp</p>

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

}

<p>mset1.cpp</p>

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

}

<p>vec2.cpp</p>

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

}

<p>uniqcpy2.cpp</p>

#include ‹stl.h›

#include ‹iostream.h›

#include ‹string.h›

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

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

}

char* labels[] = {"Q","Q","W","W","E","E","R","T","T","Y","Y"};

int main() {

 const unsigned count = sizeof(labels) / sizeof(labels[0]);

 ostream_iterator ‹char*› iter(cout);

 copy(labels, labels + count, iter);

 cout ‹‹ endl;

 char* uCopy[count];

 fill(uCopy, uCopy + count, ");

 unique_copy(labels, labels + count, uCopy, str_equal);

Перейти на страницу:

Похожие книги

1С: Бухгалтерия 8 с нуля
1С: Бухгалтерия 8 с нуля

Книга содержит полное описание приемов и методов работы с программой 1С:Бухгалтерия 8. Рассматривается автоматизация всех основных участков бухгалтерии: учет наличных и безналичных денежных средств, основных средств и НМА, прихода и расхода товарно-материальных ценностей, зарплаты, производства. Описано, как вводить исходные данные, заполнять справочники и каталоги, работать с первичными документами, проводить их по учету, формировать разнообразные отчеты, выводить данные на печать, настраивать программу и использовать ее сервисные функции. Каждый урок содержит подробное описание рассматриваемой темы с детальным разбором и иллюстрированием всех этапов.Для широкого круга пользователей.

Алексей Анатольевич Гладкий

Программирование, программы, базы данных / Программное обеспечение / Бухучет и аудит / Финансы и бизнес / Книги по IT / Словари и Энциклопедии
1С: Управление торговлей 8.2
1С: Управление торговлей 8.2

Современные торговые предприятия предлагают своим клиентам широчайший ассортимент товаров, который исчисляется тысячами и десятками тысяч наименований. Причем многие позиции могут реализовываться на разных условиях: предоплата, отсрочка платежи, скидка, наценка, объем партии, и т.д. Клиенты зачастую делятся на категории – VIP-клиент, обычный клиент, постоянный клиент, мелкооптовый клиент, и т.д. Товарные позиции могут комплектоваться и разукомплектовываться, многие товары подлежат обязательной сертификации и гигиеническим исследованиям, некондиционные позиции необходимо списывать, на складах периодически должна проводиться инвентаризация, каждая компания должна иметь свою маркетинговую политику и т.д., вообщем – современное торговое предприятие представляет живой организм, находящийся в постоянном движении.Очевидно, что вся эта кипучая деятельность требует автоматизации. Для решения этой задачи существуют специальные программные средства, и в этой книге мы познакомим вам с самым популярным продуктом, предназначенным для автоматизации деятельности торгового предприятия – «1С Управление торговлей», которое реализовано на новейшей технологической платформе версии 1С 8.2.

Алексей Анатольевич Гладкий

Финансы / Программирование, программы, базы данных