Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Kapenberg
0 / 0 / 0
Регистрация: 27.05.2012
Сообщений: 5
#1

Написать программу на классы! - C++

27.05.2012, 14:03. Просмотров 271. Ответов 0
Метки нет (Все метки)

Суть задания :

На основе предложенной в варианте предметной области (ПО) необходимо разработать класс, описывающий требуемую сущность (*.h). Описать следующий набор конструкторов, методов и операторов класса (*.cpp), позволяющих производить манипуляции с объектами: конструктор без параметров, конструктор с параметрами, деструктор, конструктор копирования; setter'ы и getter’ы; учесть подсчет количества созданных экземпляров класса; операции сравнения (==, !=, >=, <=, >, <); операцию присваивания; операцию индексации [], обеспечивающую обращение к основному полю класса (зависит от ПО); операции преобразования к основным типам данных и наоборот*; преобразование объектов типа структуры к объектам типа класса*; перегрузка операторов извлечения и вставки <<, >>.

Предметная область: Библиотека
Список характеристик: автор книги, название, год издания, цена, является ли новым изданием, краткая аннотация, номер читательского билета, ФИО, адрес и телефон читателя, дата выдачи книги читателю и дата сдачи книги читателем.

#include <string>
#include <iostream>

using namespace std;

class Reader
protected
string FIO[100];
int cardnumber;
int telefone;
public
Reader():Fio(""),cardnumber(0),telefone(0){};
Reader(string_FIO,int _cardnumber,int _telefone):FIO(_FIO),cardnumber(_cardnumber),telefone(_telefone){}
void setFIO(_FIO)
{FIO=_FIO;}
void getFio() const
{return FIO;}
void setcardnumber(_cardnumber)
{cardnumber=_cardnumber;}
int getcurdnumber() const
{return cardnumber;}
void settelefone(_telefone)
{telefone=_telefone;}
int gettelefone() const
{return telefone


friend ostream& operator << (ostream& os, Reader& d)
{
os << d.FIO <<" фамилия имя "<<endl <<d.cardnumber << " номер читательског билета "<< endl<< d.telefone <<"телефон";
return os;
}

friend istream& operator >> (istream& is, Reader& d)
{
cout << "введите ФИО " ;
is>> d.FIO ;
cout << "введите номер карты ";
is>> d.cardnumber;
cout << "введите телефон";
is>> d.telefone;
return is;
}

operator int(Reader*t)
{
return (int)(cardnumber , telefone);
}

operator float(Reader* t)
{
return (cardnumber, telefone);
}



class Book

private
Reader readers;

string Name[100];
string Author[100];
int year;

public

Book():Name(""),Author(""),year(0),readers(NULL){};
Book(string _Name,string _Author, int _year):Name(_Name),Author(_Author),year(_year){}
void setName(string _Name)
{Name = _Name;}

void GetName() const
{
return Name;
}
void setAuthor(string _Author)
{Author = _Author;}

void GetAuthor() const
{
return Author;
}

void setyear(int _year)
{year = _year;}

int Getyear() const
{
return year;
}



friend ostream& operator << (ostream& os, Book& d)
{
os << d.Name <<" название книги "<<endl <<d.Author << " Автор"<< endl<< d.year <<"год издания";
return os;
}

friend istream& operator >> (istream& is, Book& d)
{
cout << "введите название книги " ;
is>> d.Name ;
cout << "введите автора книги ";
is>> d.Author;
cout << "введите год издания";
is>> d.year;
return is;
}

operator int(Book *t)
{
return (int)(year);
}

operator float(Book* t)
{
return year;
}

решив проверить на ошибки столкнулся с

Error 1 general error c1010070: Failed to load and parse the manifest. 5 C405BAO =09B8 C:070==K9 D09;. .\Debug\;01>@0B>@=0O 4.exe.intermediate.manifest лабораторная 4
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
27.05.2012, 14:03
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Написать программу на классы! (C++):

Изучению классы, не могу написать программу - C++
Изучаю классы по книге &quot;Джесс Либерти: Освой самостоятельно C++ за 21 день&quot;. Это день 6. Перешел к упражнения и не могу написать программу,...

Классы. Файлы. Топ файлов написать программу - C++
Создать класс File. Добавить метод, который считает сколько файлов на определённом диске. Создать метод Competition. Он...

Написать программу использующую пользовательские классы Stack, Queue, Deque - C++
Добрый день) совсем иссякли идеи,что можно написать,чтобы программа включала в себя стек,очередь и дек(на массиве),если есть у кого в...

Написать программу "Отдел кадров", используя классы - C++
Написать программу &quot;Отдел кадров&quot;, используя классы. В public указать имя, год рождения и оклад сотрудника, в private город, адрес, пол....

Классы: написать класс часов - C++
Требуется написать класс часов. Возник вопрос с функцией ввода. Как лучше её писать: 1.считывать любой ввод и при неверном вводу...

Задача: написать классы Rect и Size - C++
Написать Класс Rect где точка origin верхняя левая и класс Size ширина и высота

0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
27.05.2012, 14:03
Привет! Вот еще темы с ответами:

Переделать программу под классы - C++
Прошу помощи у знающих. Нужно переделать эту программу под классы. #include &lt;conio.h&gt; #include &lt;iostream&gt; #include &lt;fstream&gt; ...

Переделать программу используя классы - C++
#include &lt;iostream&gt; #include &lt;cmath&gt; #include &lt;cstdlib&gt; struct Dot{ float X,Y,Z; }; float distance(Dot P,Dot O){ ...

Нужно добавить классы в программу - C++
#include &quot;stdafx.h&quot; #include &lt;stdlib.h&gt; #include &lt;stdio.h&gt; #include &lt;string.h&gt; #include &lt;malloc.h&gt; #include &lt;locale.h&gt; ...

Классы, Конструкторы, Деструкторы. Отредактировать программу - C++
#include &lt;iostream&gt; #include &lt;string&gt; #ifndef STUDENTH #define STUDENTH #endif using namespace std; const int...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru