Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
lab_33.doc
Скачиваний:
8
Добавлен:
16.11.2019
Размер:
88.58 Кб
Скачать

Успадкування в шаблонах класів

Шаблони класів, як і класи, підтримують механізм спадкоємства. Усі основні ідеї спадкоємства при цьому залишаються незмінними, що дозволяє побудувати ієрархічну структуру шаблонів, аналогічну ієрархії класів.

Розглянемо дуже простий приклад, на якому продемонструємо, яким чином можна створити шаблон класу, похідний з нашого шаблону класу Pair. Нехай це буде клас Trio, в якому до пари елементів a і b з Pair, додамо елемент c.

template <class T>

class Trio: public Pair <T>

{ T c;

public:

Trio (T t1, T t2, T t3);

...

};

template <class T>

Trio<T>::Trio (T t1, T t2, T t3) : Pair <T> (t1, t2)c(t3)

{}

// // Помітимо, що виклик батьківського конструктора

// // також супроводжується передачею типу Т як параметр.

Контрольні питання

  1. Що таке шаблони і з якою метою вони використовуються?

  2. Якого типу шаблони використовуються в програмах?

  3. Як оформляються шаблони функцій?

  4. Які вимоги пред'являються до фактичних параметрів шаблонів?

  5. Які переваги програми забезпечуються при використанні шаблонів класів?

Порядок виконання лабораторної роботи

  1. На лабораторній роботі набрати текст програми і відлагодити її.

  2. Показати результат роботи програми викладачеві.

  3. Захистити лабораторну роботу.

Вимоги до звіту

Звіт повинен містити:

  1. конспект теоретичної частини;

  2. лабораторне завдання;

  3. порядок виконання лабораторної роботи;

  4. результати виконання програм.

Варіанти завдань

Номер варіанту

Завдання

1,15

Опишіть клас, що параметризується, список елементів (параметр - тип).

2,16

Опишіть клас, що параметризується, двозвязковий список елементів (параметр - тип).

3,17

Опишіть клас, що параметризується, черга елементів (параметр - тип).

4,18

Опишіть клас, що параметризується, стек елементів (параметр - тип).

5,19

Опишіть клас, що параметризується, стек елементів обмеженої місткості (параметр - тип і число).

6,20

Опишіть клас, що параметризується, геометрична фігура на площині (параметр - тип і число).

7,21

Опишіть функцію сортування вставкою, що параметризується.

8,22

Опишіть функцію сортування вибіркою, що параметризується.

9,23

Опишіть функцію сортування бульбашкою, що параметризується.

10,24

Опишіть функцію знаходження елементу, що параметризується, в неврегульованому масиві.

11,25

Опишіть функцію знаходження елементу, що параметризується, у впорядкованому масиві.

12,26

Опишіть функцію заміни одного елементу масиву, що параметризується, на іншій.

13,27

Опишіть функцію інверсії масиву елементів, що параметризується.

14,28

Опишіть функцію обчислення середнього арифметичного значення масиву елементів, що параметризується.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]