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

UptoLike

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

61
Определение должно начинаться с ключевого слова template, за ко-
торым следует такой же список_параметров_типов в угловых скобках, ка-
кой указан в определении шаблона класса.
За именем_класса, предшествующим операции области видимости
(::), должен следовать список_имен_параметров шаблона.
template<список_типов>тип_возвр_значения имя_класса<список
_
имен_ параметров> : : имя_функции(список_параметров){ . . . }
Порядок выполнения работы.
1. Создать шаблон заданного класса. Определить конструкторы, де-
структор, перегруженную операцию присваивания (“=”) и операции, за-
данные в варианте задания.
2. Написать программу тестирования, в которой проверяется исполь-
зование шаблона для стандартных типов данных.
3. Выполнить тестирование.
4. Определить пользовательский класс, который будет использовать-
ся в качестве параметра шаблона. Определить в классе необходимые
функции и перегруженные операции.
5. Написать программу тестирования, в которой проверяется исполь-
зование шаблона для пользовательского типа.
6. Выполнить тестирование.
Методические указания.
1. Класс АТД реализовать как динамический массив. Для этого опре-
деление класса должно иметь следующие поля:
указатель на начало массива;
максимальный размер массива;
текущий размер массива.
2. Для вода и вывода определить в классе функции input и print.
3. Чтобы у вас не возникало проблем, аккуратно работайте с кон
-
стантными объектами. Например:
конструктор копирования следует определить так:
MyTmp (const MyTmp& ob);
операцию присваивания перегрузить так:
MyTmp& operator = (const MyTmp& ob);
4. Для шаблонов множеств, списков, стеков и очередей в качестве
стандартных типов использовать символьные, целые и вещественные ти-
пы. Для пользовательского типа взять класс из лабораторной работы 1.
5. Для шаблонов массивов в качестве стандартных
типов использо-
                                   61

       •Определение должно начинаться с ключевого слова template, за ко-
торым следует такой же список_параметров_типов в угловых скобках, ка-
кой указан в определении шаблона класса.
       •За именем_класса, предшествующим операции области видимости
(::), должен следовать список_имен_параметров шаблона.
       template<список_типов>тип_возвр_значения имя_класса<список_
имен_ параметров> : : имя_функции(список_параметров){ . . . }

     Порядок выполнения работы.
     1. Создать шаблон заданного класса. Определить конструкторы, де-
структор, перегруженную операцию присваивания (“=”) и операции, за-
данные в варианте задания.
     2. Написать программу тестирования, в которой проверяется исполь-
зование шаблона для стандартных типов данных.
     3. Выполнить тестирование.
     4. Определить пользовательский класс, который будет использовать-
ся в качестве параметра шаблона. Определить в классе необходимые
функции и перегруженные операции.
     5. Написать программу тестирования, в которой проверяется исполь-
зование шаблона для пользовательского типа.
     6. Выполнить тестирование.

      Методические указания.
      1. Класс АТД реализовать как динамический массив. Для этого опре-
деление класса должно иметь следующие поля:
      − указатель на начало массива;
      − максимальный размер массива;
      − текущий размер массива.
      2. Для вода и вывода определить в классе функции input и print.
      3. Чтобы у вас не возникало проблем, аккуратно работайте с кон-
стантными объектами. Например:
      •конструктор копирования следует определить так:
       MyTmp (const MyTmp& ob);
      •операцию присваивания перегрузить так:
       MyTmp& operator = (const MyTmp& ob);
      4. Для шаблонов множеств, списков, стеков и очередей в качестве
стандартных типов использовать символьные, целые и вещественные ти-
пы. Для пользовательского типа взять класс из лабораторной работы № 1.
      5. Для шаблонов массивов в качестве стандартных типов использо-