Объектно-ориентированное программирование на языке С++. Ноткин А.М. - 90 стр.

UptoLike

Составители: 

91
4. Для вставки и удаления элементов контейнера в программе 2
использовать соответствующие операции, определенные в классе контей-
нера.
5. Для создания второго контейнера в программе 3 можно исполь-
зовать либо алгоритм remove_copy_if, либо определить свой алгоритм
copy_if, которого нет в STL.
6. Для поиска элемента в коллекции можно использовать алгоритм
find_if, либо for_each,
либо binary_search, если контейнер отсортирован.
7. Для сравнения элементов при сортировке по возрастанию исполь-
зуется операция <, которая должна быть перегружена в пользовательском
классе. Для сортировки по убыванию следует написать функцию comp и
использовать вторую версию алгоритма sort.
8. Условия поиска и замены элементов выбираются самостоятельно
и для них пишется функция-предикат.
9. Для
ввода-вывода объектов пользовательского класса следует пе-
регрузить операции “>>” и “<<”.
10. Некоторые алгоритмы могут не поддерживать используемые в
вашей программе контейнеры. Например, алгоритм sort не поддерживает
контейнеры, которые не имеют итераторов произвольного доступа. В этом
случае следует написать свой алгоритм. Например, для стека алгоритм
сортировки может выполняться следующим образом: переписать стек
в
вектор, отсортировать вектор, переписать вектор в стек.
10.При перемещении элементов ассоциативного контейнера в неас-
социативный перемещаются только данные (ключи не перемещаются). И
наоборот, при перемещении элементов неассоциативного контейнера в ас-
социативный должен быть сформирован ключ.
Содержание отчета.
1. Титульный лист.
2. Постановка задач.
3. Определение пользовательского класса.
4. Определения используемых в программах компонентных функций
для работы с контейнером, включая конструкторы.
5. Объяснение этих функций.
6. Объяснение используемых в программах алгоритмов STL.
7. Определения и объяснения, используемых предикатов и функций
сравнения.
                                   91

      4. Для вставки и удаления элементов контейнера в программе № 2
использовать соответствующие операции, определенные в классе контей-
нера.
      5. Для создания второго контейнера в программе № 3 можно исполь-
зовать либо алгоритм remove_copy_if, либо определить свой алгоритм
copy_if, которого нет в STL.
      6. Для поиска элемента в коллекции можно использовать алгоритм
find_if, либо for_each, либо binary_search, если контейнер отсортирован.
      7. Для сравнения элементов при сортировке по возрастанию исполь-
зуется операция <, которая должна быть перегружена в пользовательском
классе. Для сортировки по убыванию следует написать функцию comp и
использовать вторую версию алгоритма sort.
      8. Условия поиска и замены элементов выбираются самостоятельно
и для них пишется функция-предикат.
      9. Для ввода-вывода объектов пользовательского класса следует пе-
регрузить операции “>>” и “<<”.
      10. Некоторые алгоритмы могут не поддерживать используемые в
вашей программе контейнеры. Например, алгоритм sort не поддерживает
контейнеры, которые не имеют итераторов произвольного доступа. В этом
случае следует написать свой алгоритм. Например, для стека алгоритм
сортировки может выполняться следующим образом: переписать стек в
вектор, отсортировать вектор, переписать вектор в стек.
      10.При перемещении элементов ассоциативного контейнера в неас-
социативный перемещаются только данные (ключи не перемещаются). И
наоборот, при перемещении элементов неассоциативного контейнера в ас-
социативный должен быть сформирован ключ.



      Содержание отчета.
      1. Титульный лист.
      2. Постановка задач.
      3. Определение пользовательского класса.
      4. Определения используемых в программах компонентных функций
для работы с контейнером, включая конструкторы.
      5. Объяснение этих функций.
      6. Объяснение используемых в программах алгоритмов STL.
      7. Определения и объяснения, используемых предикатов и функций
сравнения.