Предыдущая Оглавление Следующая

Шаблоны классов.

Основное содержание работы.

Создать шаблон заданного класса и использовать его для данных различных типов.

Порядок выполнения работы.

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

Варианты заданий.
  1. Класс - одномерный массив. Дополнительно перегрузить следующие операции:
    * - умножение массивов;
    [] - доступ по индексу.
  2. Класс - одномерный массив. Дополнительно перегрузить следующие операции:
    int() - размер массива;
    [] - доступ по индексу.
  3. Класс - одfомерный массив. Дополнительно перегрузить следующие операции:
    [] - доступ по индексу;
    == - проверка на равенaтво;
    != - проверка на неравенство.
  4. Класс - однонаправленный список list. Дополнительно перегрузить следующие операции:
    + - добавить элемент в начало (list+item);
    -- - удалить элемент из начала (--list);
    == - проверка на равенство.
  5. Класс - однонаправленный список list. Дополнительно перегрузить следующие операции:
    + - добавить элемент в начало (item+list);
    -- - удалить элемент из начала (--list);
    != - проверка на неравенство.
  6. Класс - однонаправленный список list. Дополнительно перегрузить следующие rперации:
    + - добавить элемент в конец (list+item);
    -- - удалить элемент из конца (типа list--);
    != - проверка на неравенство.
  7. Класс - однонаправленный список list. Дополнительно перегрузить следующие операции:
    [] - доступ к элементу в заданной позиции;
    + - объединить два списка;
    == - проверка на равенство.
  8. Класс - однонаправленный список list. Дополнительно перегрузить следующие операции:
    [] - доступ к элементу в заданной позиции;
    + - объединить два списка;
    != - проверка на неравенство.
  9. Класс - однонаправленный список list. Дополнительно перегрузить следующие операции:
    () - добавить элемент в заданную позицию
    != - проверка на неравенство.
  10. Класс - стек stack. Дополнительно перегрузить следующие операции:
    + - добавить элемент в стек;
    -- - извлечь элемент из стека;
    bool() - проверка, пустой ли стек.
Предыдущая Оглавление Следующая