книга (И.А. Волкова, А.В. Иванов, Л.Е. Карпов - Основы объектно-ориентированного программирования. Язык программирования С++), страница 19
Описание файла
Файл "книга" внутри архива находится в папке "И.А. Волкова, А.В. Иванов, Л.Е. Карпов - Основы объектно-ориентированного программирования. Язык программирования С++". PDF-файл из архива "И.А. Волкова, А.В. Иванов, Л.Е. Карпов - Основы объектно-ориентированного программирования. Язык программирования С++", который расположен в категории "". Всё это находится в предмете "практикум (прикладное программное обеспечение и системы программирования)" из 4 семестр, которые можно найти в файловом архиве МГУ им. Ломоносова. Не смотря на прямую связь этого архива с МГУ им. Ломоносова, его также можно найти и в других разделах. .
Просмотр PDF-файла онлайн
Текст 19 страницы из PDF
Инициализация списка копированием123Стандартная Библиотека шаблонов STL//////////элемента, на который указывает итератор first, во всеэлементы из диапазона [first, last) (уже былоотмечено, что функция end() возвращает итератор,который указывает на элемент, следующий за последнимэлементом).list(const list <T,A> & obj);// конструкторкопирования~list(); // деструктор// . .
.// Некоторые методы класса list// . . .list& operator=(const list<T,A> & obj);iterator erase(iterator i);// удаляет элемент, на который указывает данный// итератор. Возвращает итератор элемента,следующего// за удаленным элементом.iterator erase (iterator st, iterator fin);// Удаляются все элементы между st и fin, но fin не// удаляется. Возвращается fin.iterator insert(iterator i, const Т& value = T());// вставка значения value перед i.
Возвращаетитератор// вставленного элемента.void insert (iterator i, size_type n, const T&value);// вставка n копий элементов со значением value перед// i.void push_back(const T& value); // добавляет элементв// конец спискаvoid push_front(const T& value);// добавляетэлемент// в начало спискаvoid pop_back();// удаляет последний элемент.// Значение не возвращается.void pop_front();// удаляет первый элемент спискаsize_type size() const;// выдает количествоэлементов// спискаbool empty() const;// возвращает значение true,если// вызывающий список пустvoid clear(); //удаляет все элементы списка. .
.}124Стандартная Библиотека шаблонов STL16.8. Пример решения задачис использованиемконтейнеров STLЗадача:Написать функцию g() с тремя параметрами:— непустой и неизменяемый контейнер-вектор типа vector ‹float›,— непустой контейнер-список типа list ‹float›,— целое число — шаг по первому контейнеру.Функция должна исследовать:— элементы списка, выбираемые от его конца с шагом 1, и— элементы вектора, выбираемые от его начала с шагом, равнымтретьему параметру.Если обнаруживаются пары элементов разных знаков, то у текущегоэлемента списка должен меняться знак.После окончания сравнения контейнеров функция должна вывести наустройство вывода изменённый список.Функция возвращает общее количество неотрицательных элементовсписка.Решение:#include <iostream>#include <Vector>#include <List>using namespace std; // средства стандартной библиотеки,// и, в частности, STL, определены в// пространстве имен std.typedef vector<float> V;typedeflist<float> L;int g(const V& vect, L& lst, int step){V:: const_iterator vp = vect.begin();L:: reverse_iterator lp = lst.rbegin();int t = 0;do{if (*lp * *vp < 0)*lp = -*lp;if (vect.end() - vp <= step)break;++ lp;vp += step;}while (lp != lst.rend());L::iterator rp = lst.begin();125Стандартная Библиотека шаблонов STLwhile (rp != lst.end()){cout << *rp << ' ';if (*rp >= 0)t++;++rp;};cout << endl;return t;}int main(){V vect1(15,0.0);L list1(15,0.0);и список// описание тестовых объектов// определенных типов// вектор чисел типа float// чисел типа float размером по15// элементов с начальным// заполнением нулями.}126int i;.
. .i = g (vect1, list1, 1);cout<< '\n' << "positive elements:return 0;" << i << '\n';ЛитератураГлава 17. Литература1. Standard for the C Programming Language ISO/IEC 9899, 1990.2. Standard for the C++ Programming Language ISO/IEC 14882, 1998.3. Архангельский А.Я. Компоненты общего назначения библиотекиC++ Builder 5.
— М.: ЗАО «Издательство БИНОМ» 2001 — 416 с.4. Архангельский А.Я. Язык Pascal и основы программированияв Delphi — М.: ООО «Бином-Пресс», 2004.5. Бокс Д. Сущность технологии COM. Библиотека программиста. 4-еизд. — СПБ.: Питер, 2001 — 400 с.6. Глушаков С.В. Программирование на Visual C++ — М.: ООО «Издательство АСТ»; Харьков «Феликс», 2003 — 726 с.7. Гослинг Д., Арнольд К. Язык программирования Java. /Пер.с англ. — СПБ.: Питер, 1997 — 304 с.8. Лясин Д.Н., Саньков С.Г.
Объектно-ориентированное программирование на языке С++: Учебное пособие./ Волгоград. гос. техн.ун-т, — Волгоград, 2003 — 83 с.9. Пол Айра. Объектно-ориентированное программирование на C++.2-е изд./Пер. с англ. — СПБ.; М.: «Невский Диалект» — «Издательство БИНОМ», 1999 — 462 с.10. Пратт Т., Зелковиц М. Языки программирования: разработкаи реализация. 4-е изд. — СПБ.: Питер, 2002 — 688 с.11.
Столяров А.В. Методы и средства визуального программирования.Раздел «Введение в язык C++». М.: МГТУ ГА, 2008 — 112 c.12. Страуструп Б. Язык программирования C++. Специальное изд./Пер.с англ. — М.: «Бином», 2005.13. Шилдт Г. C# учебный курс. — СПБ.: Питер; К.: Издательская группаBHV, 2003 — 512 с.14. Шилдт Г.
Самоучитель C++. 3-е изд., — СПБ.: БХВ-Петербург,2002.127.