МУ_ДЗ_2014 (Методические указания к лабораторным работам), страница 11

2018-01-11СтудИзба

Описание файла

Файл "МУ_ДЗ_2014" внутри архива находится в папке "Методические указания к лабораторным работам". Документ из архива "Методические указания к лабораторным работам", который расположен в категории "". Всё это находится в предмете "программирование на основе классов и шаблонов" из 2 семестр, которые можно найти в файловом архиве МГТУ им. Н.Э.Баумана. Не смотря на прямую связь этого архива с МГТУ им. Н.Э.Баумана, его также можно найти и в других разделах. Архив можно найти в разделе "книги и методические указания", в предмете "программирование на основе классов и шаблонов" в общих файлах.

Онлайн просмотр документа "МУ_ДЗ_2014"

Текст 11 страницы из документа "МУ_ДЗ_2014"

Класс абстрактных домов - AbstrHome

Смысловое описание класса: Абстрактный класс, используется в учебно-методическом аспекте для получения навыков использования абстрактных классов и виртуальных функций, а также для возможностей развития системы классов улиц и домов, например для поисковых систем.

Базовые классы класса AbstrHome: : public CObject

Свойства класса AbstrHome

п/п

Содержание свойства

Тип данных и название

Примечание

Символьное поле для поиска объекта дома

char *name;

Номер-ключ для поиска объекта дома

int no;

Методы класса AbstrHome

п/п

Содержание метода

Тип метода

Прототип метода

Примечание

Создание объекта

конструктор (конст.)

AbstrHome();

Удаление объекта

Деструктор

~ AbstrHome ()

Виртуальные методы класса AbstrHome

Получить тип класса

Виртуальный метод

virtual int classType()=0;

Чистая ВФ

Получить имя класса

Виртуальный метод

virtual char *className() =0;

Чистая ВФ

Распечатать параметры дома

Виртуальный метод

virtual void printOn (ostream & out) =0;

Чистая ВФ

Для класса улиц мы можем получить следующую таблицу свойств и методов:

Класс улиц - Street

Смысловое описание класса улиц: класс улиц используется для создания объектов типа улица, включающая в себя дома. Дома на улице упорядочены. Учитываются свойства: название улицы, признаки ремонта, тип улицы, число домов на улице, список соседних улиц.

Базовые классы класса Street: AbstrStreet, , CObArray

Свойства класса Street

п/п

Содержание свойства

Тип данных и название

Примечание

Символьное название улицы

char *Name_Street

Число домов на улице

int Homes_num

Номер улицы

int NumberStreet

Признак ремонта домов на улице

BOOL Remont

Признак ремонта улицы

BOOL RemontStreet

Тип улицы

StreetType StrType

Список соседних улиц

Street * ListOfNear

Зарезервировано для развития

Методы класса Street

п/п

Содержание метода

Тип метода

Прототип метода

Примечание

Создать улицу без параметров

конструктор (конст.)

Street()

Проложить улицу

Создать улицу с названием

конст.

Street(const char *sName)

Проложить улицу

Создать улицу с названием и ключом для поиска

конст.

Street(const char *sNumbSearch, const char *sName)

Проложить улицу

Создать улицу с номером

конст.

Street(int Num)

Проложить улицу

Создать улицу с названием и номером

конст.

Street(const char *sName , int Num)

Проложить улицу

Создать улицу на основе другой

конст

Street(Street & S)

Проложить улицу

Удалить улицу

Деструктор

~Street()

Снести улицу

Добавить дом на улицу

Метод

void add(Home *pH, TypeAddDel = tail , int Numb = 1 , TypeAddDel = createObj)

Удалить дом с улицы

Метод

void del(Home *pH , TypeAddDel = tail , int Numb = 1 , TypeAddDel = nodeleteObj)

Получить число домов

Метод

int GetNumberHome()

Получить число жителей

Метод

int GetNumberMens()

Получить число квартир

Метод

int GetNumberApart()

Получить название улицы

Метод

char * GetNameStreet()

Получить имя улицы для поиска

Метод

char * GetKeyNameStreet()

Получить номер улицы

Метод

int GetNumbStreet()

Получить номер улицы для поиска

Метод

int GetKeyNumbStreet()

Установить название улицы

Метод

void SetNameStreet(const char * NameStr)

Установить название ключ для поиска улицы

Метод

void SetKeyNameStreet(const char * sName)

Установить номер улицы

Метод

void SetNumbStreet( int n )

Установить номер ключ для поиска улицы

Метод

void SetKeyNumbStreet( int k)

Получить признак ремонта домов

Метод

BOOL GetRemont()

Получить признак ремонта улицы

Метод

BOOL GetRemontStr()

Установить признак ремонта улицы

Метод

void SetRemontStr(BOOL rS)

Получить тип улицы

Метод

StreetType GetStreetType()

Установить тип улицы

Метод

void SetStreetType(StreetType t)

Оператор присваивания

Оператор =

Street operator =( Street & S );

Оператор должен быть перегружен, так как в объекте есть данные из динамической памяти

Сложить две улицы

- оператор

friend Street & operator +( Street & X , Street & Y );

Дружественная внешняя функция

Виртуальные методы класса Street

Получить тип класса

Виртуальный метод

virtual int classType();

Получить имя класса

Виртуальный метод

virtual char *className();

Распечатать параметры дома

Виртуальный метод

Virtual void printOn (ostream & out);

Класс абстрактных улиц - AbstrStreet

Смысловое описание класса: Абстрактный класс, используется в учебно-методическом аспекте для получения навыков использования абстрактных классов и виртуальных функций, а также для возможностей развития системы классов улиц и домов, например для поисковых систем.

Базовые классы класса AbstrStreet: нет

Свойства класса AbstrStreet

п/п

Содержание свойства

Тип данных и название

Примечание

Символьное поле для поиска объекта дома

char *name;

Номер-ключ для поиска объекта дома

int no;

Методы класса AbstrStreet

п/п

Содержание метода

Тип метода

Прототип метода

Примечание

Создание объекта

конструктор (конст.)

AbstrStreet ();

Удаление объекта

Деструктор

~ AbstrStreet ()

Виртуальные методы класса AbstrStreet

Получить тип класса

Виртуальный метод

virtual int classType()=0;

Чистая ВФ

Получить имя класса

Виртуальный метод

virtual char *className() =0;

Чистая ВФ

Распечатать параметры дома

Виртуальный метод

virtual void printOn (ostream & out) =0;

Чистая ВФ

На втором этапе необходимо запрограммировать классы на языке С++. Отладить программы описания классов (обязательно использование отладчика), разработав для этого тестовый, демонстрационный пример, который иллюстрирует работу всех методов всех разработанных классов, а также использование всех свойств/атрибутов объектов всех разработанных классов.

Пример. Описание классов нашего примера может выглядеть так, мы поместим эти описания в модуль – DZ_Class.H:

Свежие статьи
Популярно сейчас
Как Вы думаете, сколько людей до Вас делали точно такое же задание? 99% студентов выполняют точно такие же задания, как и их предшественники год назад. Найдите нужный учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
5209
Авторов
на СтудИзбе
431
Средний доход
с одного платного файла
Обучение Подробнее