
- •Лабораторная работа 1
- •Компоненты класса
- •Тип_класса имя_класса {список_членов_класса};
- •Имя_класса имя_объекта;
- •Конструкторы
- •Статические члены класса
- •Вопросы к защите лабораторной работы
- •Лабораторная работа 2
- •Задания на лабораторную работу
- •Перегрузка оперций
- •Перегрузка унарных операций
- •Перегрузка бинарных операций
- •Перегрузка операции присваивания.
- •Вопросы к защите лабораторной работы
- •Лабораторная работа 3
- •Связанных наследованием.
- •Задания по лабораторной работе
- •Простое наследование
- •Множественное наследование
- •Абстрактные классы
- •Виртуальные функции
- •Вопросы к защите лабораторной работы
- •Лабораторная работа 4 Тема: Универсальность. Применение шаблонов функций и классов.
- •Задания к лабораторной работе
- •Шаблон функции
- •Основные свойства параметров шаблона функции
- •Шаблон класса
- •Основные свойства шаблонов классов
- •Компонентные функции параметризованных классов
- •::Имя_функции(список_параметров){ . . . } Вопросы к защите лабораторной работы
- •Список литературы
Компонентные функции параметризованных классов
Реализация компонентной функции шаблона класса, которая находится вне определения шаблона класса, должна включать дополнительно следующие два элемента:
Определение должно начинаться с ключевого слова template, за которым следует такой же список_параметров_типов в угловых скобках, какой указан в определении шаблона класса.
За именем_класса, предшествующим операции области видимости (::), должен следовать список_имен_параметров шаблона.
template<список_типов> тип_возвр_значения имя_класса<список_имен_ параметров>
::Имя_функции(список_параметров){ . . . } Вопросы к защите лабораторной работы
1. В чем смысл использования шаблонов?
2. Каковы синтаксис/семантика шаблонов функций?
3. Каковы синтаксис/семантика шаблонов классов?
4. Что такое параметры шаблона функции?
5. Перечислите основные свойства параметров шаблона функции.
6. Как записывать параметр шаблона?
7. Можно ли перегружать параметризованные функции?
8. Перечислите основные свойства параметризованных классов.
9. Может ли быть пустым список параметров шаблона? Объясните.
10. Как вызвать параметризованную функцию без параметров?
11. Все ли компонентные функции параметризованного класса являются параметризованными?
12. Являются ли дружественные функции, описанные в параметризованном классе, параметризованными?
13. Могут ли шаблоны классов содержать виртуальные компонентные функции?
14. Как определяются компонентные функции параметризованных классов вне определения шаблона класса?
Список литературы
|
|
|
|
|
|
|
|
|
|