Шаблон_Руководство пользователя (РП) (Методические указания к лабораторным работам)
Описание файла
Файл "Шаблон_Руководство пользователя (РП)" внутри архива находится в следующих папках: Методические указания к лабораторным работам, ЛР_14_КЛР_ПКШ. Документ из архива "Методические указания к лабораторным работам", который расположен в категории "". Всё это находится в предмете "программирование на основе классов и шаблонов" из 2 семестр, которые можно найти в файловом архиве МГТУ им. Н.Э.Баумана. Не смотря на прямую связь этого архива с МГТУ им. Н.Э.Баумана, его также можно найти и в других разделах. Архив можно найти в разделе "книги и методические указания", в предмете "программирование на основе классов и шаблонов" в общих файлах.
Онлайн просмотр документа "Шаблон_Руководство пользователя (РП)"
Текст из документа "Шаблон_Руководство пользователя (РП)"
11
Московский государственный технический университет им. Н.Э.Баумана
_________________________________________________________________
УТВЕРЖДАЮ: | |
Большаков С.А. | "__"_____________201Х Г. |
Комплексная лабораторная работа по дисциплине ПКШ
“Система классов улиц и домов”
Руководство пользователя
(вид документа)
писчая бумага
(вид носителя)
11
(количество листов)
ИСПОЛНИТЕЛЬ: | |
студент группы ИУ5-ХХ | _____________________ |
Большаков С.А. | "__"_____________201Х г. |
Москва - 201Х
________________________________________________________________
СОДЕРЖАНИЕ
1. НАЗНАЧЕНИЕ И УСЛОВИЯ ПРИМЕНЕНИЯ ПРОГРАММЫ 3
2. ПОДКЛЮЧЕНИЕ СИСТЕМЫ КЛАССОВ И ДИАГРАММА КЛАССОВ 3
3. РАБОТА С СИСТЕМОЙ КЛАССОВ 3
3.1. Общие сведения о системе классов улиц и домов 3
3.2. Диаграмма классов улиц и домов 4
3.3. Подключение системы классов в программу 5
3.4. Общие данные и переменные 5
4. КЛАСС ДОМОВ - Home 6
4.1. Данные и переменные класса Home 6
4.2. Конструкторы класса Home 6
4.3. Деструктор класса Home 7
4.4. Методы класса Home 7
4.5. Операции класса Home 9
4.6. Дружественные функции класса Home 9
5. КЛАСС Улиц - Street 10
6. ОТКЛЮЧЕНИЕ СИСТЕМЫ КЛАССОВ 10
7. СООБЩЕНИЙ ОБ ОШИБКАХ И ИСКЛЮЧИТЕЛЬНЫЕ СИТУАЦИИ 10
1 НАЗНАЧЕНИЕ И УСЛОВИЯ ПРИМЕНЕНИЯ ПРОГРАММЫ
Система классов домов и улиц предназначена для автоматизации работы с объектами улиц и домов в программных проектах и предметной области, где необходимо это учитывать. В частности, система классов предназначена для программирования задач включающих действия: оценки ремонта домов и улиц, подсчета числа жителей, квартир и этажей в домах. Система классов обеспечивает удобную работу с этими объектами, высокий уровень надежности программ, функциональных возможностей, а также сокращение сроков разработки и реализации программных продуктов, где необходимо использовать подобные объекты.
(В разделе описаны назначения и условия применения системы классов вашего варианта!)
2 ПОДКЛЮЧЕНИЕ СИСТЕМЫ КЛАССОВ И ДИАГРАММА КЛАССОВ
Для того, чтобы установить данную систему классов на компьютер следует произвести следующие действия:
-
Освободить на жестком диске как минимум 200 килобайт свободного пространства.
-
Вставить дискету или CD/DVD носитель с дистрибутивом программного продукта в дисковод или CD/DVD устройство.
-
Скопировать файлы. С помощью системной функции копирования файлы (или файл менеджера), которые перечислены в разделе 4 этого документа, с носителя на жесткий диск в нужные каталоги. Для испытаний любой доступный каталог (DZ_2kurs.exe). Для подключения в новый проект (DZ_2kurs.h) в ощий каталог заголовочных файлов или в специально созданный каталог для новой сборки тестового примера (DZ_2kurs.cpp, DZ_2kurs.h).
-
Прописать в установках каталогов для используемой на компьютере системы программирования С++ полный пути к директории, куда был установлены модели системы классов (DZ_2kurs.h).
(В разделе описаны шаги, которые нужно предпринять для развертывания системы классов в проекте пользователя ..)
3 РАБОТА С СИСТЕМОЙ КЛАССОВ
4 Общие сведения о системе классов улиц и домов
Система классов описывает дома и улицы для разработки программ, в которых учет сведений об этих объектах необходим.
Дом – объекты данного типа содержат информацию о номере дома, этажности, числе жителей и квартир, необходимости ремонта дома и типе дома. Предусматривается возможность изменения параметров дома.
Улица – объекты данного типа в упорядоченном виде содержат информацию о домах улице, названии улицы, типе улицы, соседних улицах (как резерв), необходимости ремонта улицы, числе домов, номера улицы (как резерв). Предусматривается возможность добавления домов на улицу и их удаления, изменения других параметров улицы.
Система классов позволяет программировать следующие операции и функции:
-
Создание и задание свойств объектов типа дом и улица;
-
Установка признака ремонта домов;
-
Сложение двух домов;
-
Получение параметров домов (номера, числа жителей, числа квартир, типа дома);
-
Установки и изменения параметров дома (номера, числа жителей, числа квартир, типа дома);
-
Удаление объектов типа дом и улица;
-
Распечатки свойств объектов типа дом и улица;
-
Добавление домов на конкретную улицу;
-
Удаление дома с конкретной улицы;
-
Сложение двух улиц (при объединении улиц);
-
Переименование улиц и новую нумерацию домов;
-
Распечатки списка домов улицы с их характеристиками;
-
Получение параметров улицы (названия, числа жителей, числа квартир, типа улицы);
-
Установки и изменения параметров улицы (названия, числа жителей, числа квартир, типа улицы);
-
Автоматическое получение признаков необходимости ремонта домов на улице.
(В разделе дано общее, на содержательном уровне описание вашей системы классов и возможностей ее применения.)
5 Диаграмма классов улиц и домов
Н
иже приставлена диаграмма классов системы классов улиц и домов программного обеспечения (ПО).
Классы системы имеют следующее назначение:
Класс Obj - абстрактный класс для наследования общих свойств объектов системы классов.
Класс listElem - класс для организации списков, задающий объекты, которые будут включаться в списки.
Класс List - класс для создания объектов, которые обеспечивают построение и работу со списками (включение, просмотр, удаление, печать и др.).
Класс AbsStreet - абстрактный класс, в котором учтены общие свойства улиц.
Класс AbsHome - абстрактный класс, в котором учтены общие свойства домов, размещаемых на улицах.
Класс Street - класс улиц, для создания объекта типа улица, позволяющий создавать объекты, учитывающие свойства: название, список домов, число домов и др.
Класс Home - класс дома, позволяющий создавать объекты описывающие дома, в которых учтены свойства: номер, число квартир, число жителей, признак ремонта и др.
(В разделе описывается диаграмма классов Вашего проекта.)
Примечание 1. В данном руководстве описаны только те классы и их составляющие (методы и свойства), которые необходимы пользователю для реализации своих задач. Это классы Street и Home. Описание других составляющих системы классов улиц и домов можно найти в документах: “Техническое описание” и “Описание тестового примера”.
Примечание 2. Результаты работы фрагментов текста программ можно найти в документах: “Программа и методика испытаний” и “Описание тестового примера”.
6 Подключение системы классов в программу
В данном фрагменте подключаются заголовочные файлы библиотек: ввода вывода (iostream), стандартных классов MFC (stdafx.h) и собственной системы классов улиц и домов (DZ_2kurs.h). Кроме того, объявлено использование именованного пространство стандартных функций (std).
#include "stdafx.h"
#include "DZ_2kurs.h"
#include <iostream>
using namespace std;
(В разделе описаны действия, необходимые для подключения системы классов в Ваш проект.)
7 Общие данные и переменные
В программах, использующих систему классов улиц и домов применяются следующие глобальные переменные и перечисления.
№ | Описание данных и перечислений | Назначение | Параметры и значения |
| enum BOOL {false=0 , true}; | Логические значения | false , true |
| static BOOL DestructorDeleteObj; | Глобальный Признак удаления объектов | false , true |
| enum HomeType{fast, multiple , complex}; | Тип дома | Fast - простой, multiple -многокорпусный, complex - сложный |
| enum StreetType{one, two , more }; | Тип улицы: | one - односторонняя, two - двухсторонняя, more - много полос |
| enum TypeAddDel {tail, head, Number ,NumbAfter, NumbCurrent, NumbBefore, AssbAfter, AssCurrent, AssBefore , createObj , nocreateObj , deleteObj, nodeleteObj }; | Режим добавления и удаления объектов | head - голова (начало), tail – хвост (конец), Number – номер (по номеру). createObj – новый объект nocreateObj – не создается deleteObj - удаляется nodeleteObj – не удаляется |
(В разделе описаны общие данные и функции используемые в проекте и собственных классах.)
8 КЛАСС ДОМОВ - Home
Класс Home. Дом – объекты данного типа содержат информацию о номере дома, этажности, числе жителей и квартир, необходимости ремонта дома и типе дома. Предусматривается возможность изменения параметров дома.
9 Данные и переменные класса Home
В классе Home объявлены следующие свойства доступные пользователю:
Переменная | Тип свойства | Защита | Назначение |
Home_Number | char * | public | Номер дома (имя) |
iHome | int | public | Номер дома числовой |
EtagCount | int | public | Число этажей |
MenCount | int | public | Число жителей |
TypeHome | HomeType | public | Тип дома (перечисление: простой, многокорпусный, сложный) |
NumbApartament | int | public | Число квартир |
HomeRemont | BOOL | public | Признак необходимости ремонта дома |
10 Конструкторы класса Home
В классе Home описаны следующие конструкторы:
№ п/п | Прототип | Тип возврата | Назначение /Параметры |
| Home() | Home & | Нет |
| Home( Home & H) | Home & | Новый на основе ссылки на объект типа дом: Home & |
| Home( Home * pH) | Home & | Новый на основе указателя на объект типа дом: Home * |
| Home(const char *HomName, const char *Number) | Home & | Новый с параметрами: HomName - имя Number - номер дома |
| Home(const char *HomName, const char *Number, int Numb) | Home & | Новый с параметрами: HomName - имя дома, Number - номер дома Numb - номер для поиска |
| Home(const char *HomName, const char *Number, int Numb, int Etag, int Men=0,HomeType Type = fast,int Apart=0) | Home & | Новый с параметрами: HomName - имя дома, Number - номер дома Numb - номер для поиска, Etag - этажность, Men - число жителей, Type – тип дома, Apart - число квартир |
Примеры использования конструкторов:
Конструктор без параметров: