Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Kursovaya Ostroverhov.docx
Скачиваний:
4
Добавлен:
18.09.2019
Размер:
6.22 Mб
Скачать

2.3.2. Описание класса:

struct turList{

int id; - идентификатор турагенства

char * fio; - указатель на данные туриста

int passN; - номер паспорта

int * Id; - массив идентификаторов оплаченных экскурсий

char * hotel; - название отеля

char * date; - дата вылета

int nDays; - число дней

turList *next; - указатель на следующий элемент

};

class Class3{

public:

Class3(): first(0), current(0) {}; - конструктор класса

void FileSave();

void FileLoad();

void Add(turList *);

bool Remove(int);

void Show();

void info(int, Class1 &, Class2 &);

private:

turList *first; - указатель на первый элемент

turList *current; - указатель на текущий элемент

};

2.3.3. Описание методов класса

void Class3::Add(turList * data) - метод добавления элемента в список туристов, приобретавших путёвки.

void Class3::Show() - метод вывода списка туристов, приобретавших путёвки, на экран.

bool Class3::Remove(int id) - удаление элемента списка по заданному id. На вход подается id.

void Class3::FileSave() - метод для сохранения списка туристов в файл.

void Class3::FileLoad() - метод для загрузки списка туристов из файла. В нем используется функция strcmp(s,"hotel").

void Class3::info(int passN, Class1 & cl1, Class2 & cl2) – вывод на экран по номеру паспорта информации о купленной путевке: ФИО, название направления, названия оплаченных экскурсий, название отеля, дата вылета, дата прилёта. На вход подается номер паспорта.

Используется функция atoi(s); - преобразует строку s в десятичное целое число.

if( ((y % 4 == 0 && y % 100 != 0) || y % 400 == 0) && m > 2 ) d++; - проверка на високосный год

3.Схема взаимодействия классов

Class1 и Class2 независимы друг от друга, параметры для их методов предоставляются из основной программы.

В заголовочный файл Class3.h включены заголовочные файлы остальных классов, а именно Class1.h и Class2.h, поскольку некоторые методы данного класса используют ссылки на элементы типа Class1 и Class2. В частности, функция Class3::Info(int, Class1 &, Class2 &) использует ссылки для получения доступа к полям соответствующих списков записей.

4. Список функций, не состоящих в классах.

Функции меню:

void GTXY(short x, short y); - перемещение звёздочки-указателя

void ExitMenu(); -меню выхода из программы

void AddElem (Class1 & cl1, Class2 & cl2, Class3 & cl3); - меню добавления элемента

void ShowList(Class1 & cl1, Class2 & cl2, Class3 & cl3); - вывод на экран

void DeleteElem(Class1 & cl1, Class2 & cl2, Class3 & cl3, int id); - удаление элемента

void LoadFile(Class1 & cl1, Class2 & cl2, Class3 & cl3); - меню загрузки списков из файла

void MainMenu(Class1 & cl1, Class2 & cl2, Class3 & cl3) – функция главного меню.

5.Меню

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]