Контрольные вопросы
Что
представляет собой класс?
Какие
элементы класса Вы знаете?
Перечислите
спецификаторы доступа, используемые
в классе, для чего нужен каждый из них.
Как
осуществляется доступ к элементам
класса?
Для
каких целей используется конструктор?
Приведите пример.
Для
каких целей используется деструктор?
Приведите пример.
Что
такое область видимости, применительно
к данным-членам класса?
Как
можно изменить область видимости с
помощью ключевых слов?
Что
такое друзья класса?
Сравните
характер доступа, предоставленный с
помощью ключа public,
с доступом, предоставленным с помощью
дружественных функций.
Статические
поля класса, для чего они нужны, чем
отличаются от прочих полей класса?
Общие требования
Смотрите
общие требования к лабораторной работе
№1, а именно
Общие
требования к выполнению заданий
Пример
распечатки данных в табличном виде
Пример
диалогового интерфейса
Выполнить
задание лабораторной работы №1 в стиле
ООП. Для этого видоизменить программу,
разработанную ранее.
Требования к выполнению данной лабораторной работы
В
заданиях используются следующие
сокращения:
pub–
открытые данные (public),
pri
– закрытые данные (private),
СД
– статические данные (в единственном
экземпляре, общие для всего класса)
НСД
– нестатические данные тиражируются
для каждого объекта
КК
– конструктор копирования
ДФ
– дружественная функция,
МК-
метод класса
Например
поле, помеченное СД, pri
означает статическую переменную,
размещенную в закрытой области.
Если
поле никак не отмечено, то считать его
открытым
Номер
компьютера
|
Варианты
заданий
|
1,
11, 21
|
База
данных: Пищевое производство (расчеты)
Создать
класс food
со следующими
элементами:
данные-члены
класса:
char*
name ; (pri)
//Название
изделия
int
quant; //
количество
double
cost; //стоимость
static
int
count;
//
счетчик существующих объектов класса
функции-члены
класса
Создать
обязательные функции, указанные в
общих требованиях (МК)
Создать
функцию для определения количества
созданных объектов
Создать
функции для данного варианта:
Тестовая
программа :
Базу
данных (массив объектов) располагать
в динамической памяти
При
запуске программы данные ввести с
клавиатуры (первый запуск программы)
или загрузить с диска (все последующие
запуски)
Добавить
несколько новых элементов (ввод с
клавиатуры)
Выполнить
все реализованные функции
При
выходе из программы запомнить
измененную базу на диске
|
2,
12, 22
|
База
данных: Поезд (заказ билетов)
Создать
класс ticket
со следующими элементами:
данные-члены
класса:
char*
fam;
(pri) //Фамилия
пассажира
char*
name; (pri) //
Имя пассажира
char*
arrival;
//
пункт прибытия
double
price;
//
цена билета
static
int
count;
//
счетчик существующих объектов класса
функции-члены
класса
Создать
обязательные функции, указанные в
общих требованиях (МК)
Создать
функцию для определения количества
созданных объектов
Создать
функции для данного варианта:
Тестовая
программа :
Базу
данных (массив объектов) располагать
в динамической памяти
При
запуске программы данные ввести с
клавиатуры (первый запуск программы)
или загрузить с диска (все последующие
запуски)
Добавить
несколько новых элементов (ввод с
клавиатуры)
Выполнить
все реализованные функции (поиск,
фильтр, сортировка)
При
выходе из программы запомнить
измененную базу на диске
|
3,
13, 23
|
База
данных: Почта (ценное письмо).
Создать
класс letter
со следующими
элементами:
данные-члены
класса:
char*
adr1; (pri) //адрес
получателя
char*
fam1;
(pri) //фамилия
получателя
char*
name1;
(pri) //
имя получателя
char*
adr2; //
адрес отправителя
char*
fam2;
//фамилия
отправителя
char*
name2; //
имя отправителя
double
cost; //
стоимость письма
static
int
count;
//
счетчик существующих объектов класса
функции-члены
класса
Создать
обязательные функции, указанные в
общих требованиях (МК)
Создать
функцию для определения количества
созданных объектов
Создать
функции для данного варианта:
Поиск
письма по полям fam2,
name2
(фамилия и имя отправителя) (МК)
Найти
все письма со стоимостью более заданного
значения (ДФ)
Тестовая
программа :
Базу
данных (массив объектов) располагать
в динамической памяти
При
запуске программы данные ввести с
клавиатуры (первый запуск программы)
или загрузить с диска (все последующие
запуски)
Добавить
несколько новых элементов (ввод с
клавиатуры)
Выполнить
все реализованные функции (поиск,
фильтр, сортировка)
При
выходе из программы запомнить
измененную базу на диске
|
4,
14, 24
|
База
данных: Студент
Создать
класс student
со следующими
элементами:
данные-члены
класса:
char*
fam;
(pri) //фамилия
студента
char*
name;
(pri) //
имя студента
int
grup //
номер группы
static
int
count;
//
счетчик существующих объектов класса
функции-члены
класса
Создать
обязательные функции, указанные в
общих требованиях (МК)
Создать
функцию для определения количества
созданных объектов
Создать
функции для данного варианта:
Тестовая
программа :
Базу
данных (массив объектов) располагать
в динамической памяти
При
запуске программы данные ввести с
клавиатуры (первый запуск программы)
или загрузить с диска (все последующие
запуски)
Добавить
несколько новых элементов (ввод с
клавиатуры)
Выполнить
все реализованные функции (поиск,
фильтр, сортировка)
При
выходе из программы запомнить
измененную базу на диске
|
5,
15, 25
|
База
данных: Производство (поставщики)
Создать
класс supplier
(поставщик) со следующими элементами:
данные-члены
класса:
char*
firma; (pri)
//
название фирмы поставщика
double
raw_
material //
сумма
поставки
сырья
double
payment; (pri)
//
оплата
сырья
static
int
count; //
счетчик
существующих
объектов
класса
функции-члены
класса
Создать
обязательные функции, указанные в
общих требованиях (МК)
Создать
функцию для определения количества
созданных объектов
Создать
функции для данного варианта:
Поиск
поставщика по названию фирмы
(МК).
Найти
поставщиков, которые получили не
полную оплату за сырье (ДФ)
Тестовая
программа :
Базу
данных (массив объектов) располагать
в динамической памяти
При
запуске программы данные ввести с
клавиатуры (первый запуск программы)
или загрузить с диска (все последующие
запуски)
Добавить
несколько новых элементов (ввод с
клавиатуры)
Выполнить
все реализованные функции (поиск,
фильтр, сортировка)
При
выходе из программы запомнить
измененную базу на диске
|
6,
16, 26
|
База
данных: Поликлиника
Создать
класс clinic
со следующими элементами:
данные-члены
класса:
char*
fam;
(pri) //фамилия
врача
char*
name; (pri) //
имя врача
int
specialty; //
специальность(1-терапевт, 2-кардиолог,
3- стоматолог)
static
int
count;
//
счетчик существующих объектов класса
функции-члены
класса
Создать
обязательные функции, указанные в
общих требованиях (МК)
Создать
функцию для определения количества
созданных объектов
Создать
функции для данного варианта:
Тестовая
программа :
Базу
данных (массив объектов) располагать
в динамической памяти
При
запуске программы данные ввести с
клавиатуры (первый запуск программы)
или загрузить с диска (все последующие
запуски)
Добавить
несколько новых элементов (ввод с
клавиатуры)
Выполнить
все реализованные функции (поиск,
фильтр, сортировка)
При
выходе из программы запомнить
измененную базу на диске
|
7,
17, 27
|
База
данных: Склад (товары)
Создать
класс storage
со следующими элементами:
данные-члены
класса:
char*
name;
(pri)
//Название
товара
double
price; (pri)
//
цена
int
quant; //
количество
static
int
count;
//
счетчик существующих объектов класса
функции-члены
класса
Создать
обязательные функции, указанные в
общих требованиях (МК)
Создать
функцию для определения количества
созданных объектов
Создать
функции для данного варианта:
Тестовая
программа :
Базу
данных (массив объектов) располагать
в динамической памяти
При
запуске программы данные ввести с
клавиатуры (первый запуск программы)
или загрузить с диска (все последующие
запуски)
Добавить
несколько новых элементов (ввод с
клавиатуры)
Выполнить
все реализованные функции (поиск,
фильтр, сортировка)
При
выходе из программы запомнить
измененную базу на диске
|
8,
18, 28
|
База
данных: Банк (депозит)
Создать
класс bank
со следующими элементами:
данные-члены
класса:
char*
fam;
(pri) //
фамилия клиента
char*
name; (pri) //
имя клиента
double
sum; //
Сумма на счете (сумма депозита )
static
int
count;
//
счетчик существующих объектов класса
функции-члены
класса:
Создать
обязательные функции, указанные в
общих требованиях (МК)
Создать
функцию для определения количества
созданных объектов
Создать
функции для данного варианта:
Тестовая
программа :
Базу
данных (массив объектов) располагать
в динамической памяти
При
запуске программы данные ввести с
клавиатуры (первый запуск программы)
или загрузить с диска (все последующие
запуски)
Добавить
несколько новых элементов (ввод с
клавиатуры)
Выполнить
все реализованные функции (поиск,
фильтр, сортировка)
При
выходе из программы запомнить
измененную базу на диске
|
9,
19, 29
|
База
данных: Работник (зарплата)
Создать
класс worker
со следующими элементами:
данные-члены
класса:
char*
fam; (pri) //
фамилия работника
char*
name; //
имя
работника
int
department; (pri) //
отдел
double
salary; //
оклад
static
int
count;
//
счетчик существующих объектов класса
функции-члены
класса:
Создать
обязательные функции, указанные в
общих требованиях (МК)
Создать
функцию для определения количества
созданных объектов
Создать
функции для данного варианта:
Тестовая
программа :
Базу
данных (массив объектов) располагать
в динамической памяти
При
запуске программы данные ввести с
клавиатуры (первый запуск программы)
или загрузить с диска (все последующие
запуски)
Добавить
несколько новых элементов (ввод с
клавиатуры)
Выполнить
все реализованные функции (поиск,
фильтр, сортировка)
При
выходе из программы запомнить
измененную базу на диске
|
10,
20, 30
|
База
данных: Преподаватель
Создать
класс prepod
со следующими элементами:
данные-члены
класса:
char*
fam;
(pri)//фамилия
преподавателя
char*
name;
//
имя преподавателя
int
status;
(pri)
//ученое
звание( 1- преподаватель, 2- доцент,
3-доктор наук)
static
int
count;
//
счетчик существующих объектов класса
функции-члены
класса:
Создать
обязательные функции, указанные в
общих требованиях (МК)
Создать
функцию для определения количества
созданных объектов
Создать
функции для данного варианта:
Тестовая
программа :
Базу
данных (массив объектов) располагать
в динамической памяти
При
запуске программы данные ввести с
клавиатуры (первый запуск программы)
или загрузить с диска (все последующие
запуски)
Добавить
несколько новых элементов (ввод с
клавиатуры)
Выполнить
все реализованные функции
При
выходе из программы запомнить
измененную базу на диске
|