ВУЗ:
Составители:
Рубрика:
12
2. ПРОСТЕЙШИЕ КЛАССЫ - КОНТЕЙНЕРЫ
Класс называют контейнером , если его объекты содержат внутри
себя некоторый набор однотипных данных. К контейнерам относятся
классы, реализующие массивы, списки, множества и други е подобные
структуры . Настоящий параграф содержит серию из четырех задач воз-
растающей сложности, в каждой из которых требуется построить класс,
представляющий вектор с теми или иными свойствами. Первая задача
существенным образом использует код библиотеки, созданной в преды-
дущем параграфе. Эта библиотека дает нам «скелет» решения, обладая
которым мы можем лучше увидеть особенности объектного программи-
рования.
Задача 2.1. Требуется разработать класс, объекты которого пред -
ставляют целочисленные векторы фиксированной размерности n. Класс
должен содержать открытые методы, выполняющие те же операции, что
и под програм мы библиотеки из задачи 1.1. Требуется также поместить
полученный класс в отдельный модуль и создать программу, использую-
щую данный модуль и демонстрирующую работу с объектами класса.
Схема решения .
1. Определение имени нового класса.
2. Разработка открытого интерфейса класса, представляющего с о-
бой список объявлений методов , которые можно будет вызывать из пол ь -
зовательской программы.
3. Раз работка закрытого и , при необходимости, защищенного и н -
терфейса. Эта часть решения включает в себя в первую очередь опред е-
ление реализации класса, т. е. списка полей, которые будут хранить всю
необходимую информацию об объекте.
4. Доработка открытого интерфейса с учетом особенностей реал и-
зации: решение вопроса о необходимости переопределения конструкт о-
ра Create и деструктора Destroy.
5. Реализация методов класса.
6. Добавление к закрытому интерфейсу вспомогательных методов ,
если таковые появились в ходе реализации методов .
7. Размещение класса внутри модуля.
8. Разработка программы, манипулирующей объектами класса.
Отметим основное отличие данной схемы от схемы решения з а-
дачи 1.1: перед разработкой открытого интерфейса класса нам необх о-
димо зафиксировать лишь название класса, все остальные детали реал и-
2. П РО СТ Е Й Ш И Е К Л А ССЫ -К О Н Т Е Й Н Е РЫ Кл ас с наз ы в ают конт ейнером , ес л и егообъект ы с од ержат в нут ри с ебя некоторы й набор од нот ипны х д анны х. К конт ейнерам от нос ят с я кл ас с ы , реал из ующ ие м ас с ив ы , с пис ки, м ножес т в а и д ругие под обны е с т рукт уры . Н ас тоящ ий параграф с од ержит с ерию из чет ы рех з ад ач в оз - рас т ающ ей с л ожнос т и, в кажд ой из которы х т ребует с я пос т роит ь кл ас с , пред с т ав л яющ ий в ектор с т ем и ил и ины м и с в ойс т в ам и. Перв ая з ад ача с ущ ес т в енны м образ ом ис пол ь з ует код библ иот еки, с оз д анной в пред ы - д ущ ем параграфе. Э т а библ иот ека д ает нам «с кел ет » решения, обл ад ая которы м м ы м ожем л учше ув ид ет ь ос обеннос т и объект ногопрограм м и- ров ания. Задача2.1. Требует с я раз работ ат ь кл ас с , объект ы которогопред - с т ав л яют ц ел очис л енны е в екторы фикс иров анной раз м ернос т и n. Кл ас с д ол жен с од ержат ь от кры т ы е м етод ы , в ы пол няющ ие т е же операц ии, что и под програм м ы библ иот еки из з ад ачи 1.1. Требует с я т акже пом ес т ит ь пол ученны й кл ас с в отд ел ь ны й м од ул ь и с оз д ат ь програм м у, ис пол ь з ую- щ ую д анны й м од ул ь и д ем онс т рирующ ую работу с объект ам и кл ас с а. Схема реш ения. 1. О пред ел ение им ени нов огокл ас с а. 2. Раз работ ка от кры того инт ерфейс а кл ас с а, пред с т ав л яющ его с о- бой с пис ок объяв л ений м етод ов , которы е м ожнобуд ет в ы з ы в ат ь из пол ь - з ов ат ел ь с кой програм м ы . 3. Раз работ ка з акры того и, при необход им ос т и, з ащ ищ енного ин- т ерфейс а. Э т а час т ь решения в кл ючает в с ебя в перв ую очеред ь опред е- л ение реал из ац ии кл ас с а, т. е. с пис ка пол ей, которы е буд ут хранит ь в с ю необход им ую информ ац ию об объект е. 4. Доработ ка от кры того инт ерфейс а с учет ом ос обеннос т ей реал и- з ац ии: решение в опрос а онеобход им ос т и переопред ел ения конс т рукто- ра Create и д ес т руктора Destroy. 5. Реал из ац ия м етод ов кл ас с а. 6. Добав л ение к з акры том у инт ерфейс у в с пом огат ел ь ны х м етод ов , ес л и т аков ы е появ ил ис ь в ход е реал из ац ии м етод ов . 7. Раз м ещ ение кл ас с а в нут ри м од ул я. 8. Раз работ ка програм м ы , м анипул ирующ ей объект ам и кл ас с а. О т м ет им ос нов ное отл ичие д анной с хем ы от с хем ы решения з а- д ачи 1.1: перед раз работ кой от кры того инт ерфейс а кл ас с а нам необхо- д им оз афикс иров ат ь л ишь наз в ание кл ас с а, в с е ос т ал ь ны е д ет ал и реал и- 12
Страницы
- « первая
- ‹ предыдущая
- …
- 10
- 11
- 12
- 13
- 14
- …
- следующая ›
- последняя »