Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь КАТЕГОРИИ: АрхеологияБиология Генетика География Информатика История Логика Маркетинг Математика Менеджмент Механика Педагогика Религия Социология Технологии Физика Философия Финансы Химия Экология ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Объектно-ориентированный подход к программированию
Организация многофайловых проектов #pragma once #ifndef MYLIB_H__ #define MYLIB_H__
#include <iostream>
namespace mylib { class Integer { private: int val; public: Integer(int v = 0); Integer(Integer const& v); int getVal()const; void setVal(int v); friend std::ostream& operator<<(std::ostream&, const Integer&); friend std::istream& operator>>(std::istream&, Integer&); };
}
#endif // MYLIB_H__
#include "mylib.h" #include <iostream> namespace mylib { Integer::Integer(int v):val(v) {} Integer::Integer(Integer const& v): val(v.val) {} int Integer::Integer::getVal()const { return val; } void Integer::setVal(int v) { val = v; }
std::ostream& operator<<(std::ostream& output, const Integer& v) { output << v.val; return output; } std::istream& operator>>(std::istream& input, Integer& v) { input >> v.val; return input; } }
#include <iostream> #include <cstdlib> #include "mylib.h"
using std::cout; using std::cin; using std::endl;
using namespace mylib;
int main() { Integer num1(1); cout << num1 << endl; cout << "New integer: "; cin >> num1; cout << num1 << endl; system("pause"); return 0; }
ЛАБОРАТОРНАЯ РАБОТА №3 Проектирование и использование классов Цель работы 1. Изучить правила организации классов, как пользовательских (агрегативных) типов данных. 2. Исследовать сокрытия данных как один из базисных принципов объектно-ориентированного программирования. 3. Научится правильно проектировать и использовать интерфейс класса (функции-члены, методы). 4. Используя разработанные классы, создать прототип базы данных, организованной по принципу электронных таблиц (массив элементов класса). Задания к лабораторной работе Согласно заданию составить алгоритм и написать программу на языке С++. Программа компилируется и запускается под управлением ОС Linux. Разработанная программа должна содержать встроенную справочную информации, описывающую правила использования, цель назначения и информацию о разработчике. Аргументы запуска программа должна обрабатывать согласно рекомендациям POSIX. Разрабатываемая программа предназначена для хранения массива экземпляров класса. Созданная электронная таблица, массив экземпляров класса должен сохраняться в бинарном файле. Для получения информации об объеме записей, в файл так же должен быть записан так называемый дескриптор электронной таблицы. Дескриптор, как минимум, должен содержать информации о количестве данных, которые записаны в указанный файл.
Перечень атрибут класса (членов-данных) определяется исходя их задания во второй лабораторной работе. Созданная программа должна поддерживать управление на уровне аргументов командной строки (аргументов запуска). Поддерживаемые опции запуска: -- help либо - h - запуск программы в режиме получения справки. После вывода справочной информации программа завершает работу. -с [ N ] [ file _ name ] - запуск программы в режиме создания электронной таблицы записей, N – количество записей, file _ name – имя бинарного файла, в котором будет сохранен массив (таблица) записей. - r [ N ] [ file _ name ] - запуск программы в режиме чтения содержимого бинарного файла file _ name, на экран должны быть выведены не более N записей. Следует учесть, что реальное количество записей в файле может не совпадать с заданным значением N. Если заданный файл окажется пуст, либо по какой-либо причине программа не сможет его открыть, должно быть выдано соответствующее сообщение. В случае, если программа будет запущена с неопределенными разработчиком аргументами, программа должна выдать соответствующее сообщение и вывести минимальную справку о корректных аргументах запуска. Это так же касается случая, когда программа запускается без аргументов.
4. НАСЛЕДОВАНИЕ В С++ ЛАБОРАТОРНАЯ РАБОТА №4
|
|||||
Последнее изменение этой страницы: 2021-06-14; просмотров: 37; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.145.191.22 (0.005 с.) |