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

UptoLike

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

46
Лабораторная работа 5
ПЕРЕГРУЗКА ОПЕРАЦИЙ
Цель. Получить практические навыки работы в среде BC++5.02 и
создания EasyWin-программы. Получить практические навыки создания
абстрактных типов данных и перегрузки операций в языке С++.
Основное содержание работы.
Определить и реализовать класс абстрактный тип данных. Опреде-
лить и реализовать операции над данными этого класса. Написать и вы-
полнить EasyWin-программу полного тестирования этого класса.
Краткие теоретические сведения.
Абстрактный тип данных (АТД).
АТД тип данных, определяемый только через операции, которые
могут выполняться над соответствующими объектами безотносительно к
способу представления этих объектов.
АТД включает в себя абстракцию как через параметризацию, так и
через спецификацию. Абстракция через параметризацию может быть
осуществлена так же, как и для процедур (функций); использованием
па-
раметров там, где это имеет смысл. Абстракция через спецификацию
достигается за счет того, что операции представляются как часть типа.
Для реализации АТД необходимо, во-первых, выбрать представле-
ние памяти для объектов и, во-вторых, реализовать операции в терминах
выбранного представления.
Примером абстрактного типа данных является класс в языке С
++.
Перегрузка операций.
Возможность использовать знаки стандартных операций для записи
выражений как для встроенных, так и для АТД.
В языке С++ для перегрузки операций используется ключевое слово
operator, с помощью которого определяется специальная операция-
функция (operator function).
Формат операции-функции:
тип_возвр_значения operator знак_операции (специф_параметров)
{операторы_тела_функции}
                                  46

                      Лабораторная работа № 5
                     ПЕРЕГРУЗКА ОПЕРАЦИЙ

      Цель. Получить практические навыки работы в среде BC++5.02 и
создания EasyWin-программы. Получить практические навыки создания
абстрактных типов данных и перегрузки операций в языке С++.

      Основное содержание работы.
      Определить и реализовать класс − абстрактный тип данных. Опреде-
лить и реализовать операции над данными этого класса. Написать и вы-
полнить EasyWin-программу полного тестирования этого класса.

      Краткие теоретические сведения.
      Абстрактный тип данных (АТД).
      АТД − тип данных, определяемый только через операции, которые
могут выполняться над соответствующими объектами безотносительно к
способу представления этих объектов.
      АТД включает в себя абстракцию как через параметризацию, так и
через спецификацию. Абстракция через параметризацию может быть
осуществлена так же, как и для процедур (функций); использованием па-
раметров там, где это имеет смысл. Абстракция через спецификацию
достигается за счет того, что операции представляются как часть типа.
      Для реализации АТД необходимо, во-первых, выбрать представле-
ние памяти для объектов и, во-вторых, реализовать операции в терминах
выбранного представления.
      Примером абстрактного типа данных является класс в языке С++.

     Перегрузка операций.
     Возможность использовать знаки стандартных операций для записи
выражений как для встроенных, так и для АТД.
     В языке С++ для перегрузки операций используется ключевое слово
operator, с помощью которого определяется специальная операция-
функция (operator function).

     Формат операции-функции:
     тип_возвр_значения operator знак_операции (специф_параметров)
     {операторы_тела_функции}