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

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

Войти
Регистрация
Восстановить пароль
 
ARTLINE-NN
1 / 1 / 0
Регистрация: 30.03.2012
Сообщений: 82
#1

Создать класс! - C++

15.05.2012, 22:44. Просмотров 290. Ответов 5
Метки нет (Все метки)

Создать класс для ПРИНТЕРОВ(можно для чего угодно: Автомобилей, Телефонов и т.д.).
Что нам надо:
Необходимо разработать иерархию классов. Базовые классы иерархии должны быть абстрактными.
В каждом классе иерархии нужно предусматривать:
-наличие не менее трех конструкторов
-визуальный диструктор
-перезагрузку операций. Обязательно перезагрузить операции: присваивания и декремента(в обеих формах), поместить в поток, взять из потока любую из бинарных и любую из унарных операций.
-виртуальные функции

Каждый класс иерархии должен быть описан в отдельном заголовочном файле, а его функции в .сpp файле с тем же именем.

Функция main должна работать с экземплярами производных классов, через указатели базового класса.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.05.2012, 22:44     Создать класс!
Посмотрите здесь:

Создать класс C++
C++ Создать класс
C++ Создать класс
создать класс C++
C++ создать класс)
C++ Создать класс
создать класс C++
C++ Создать класс
Создать класс C++
C++ создать класс
Создать класс C++
класс создать C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
sergeu90
27 / 28 / 3
Регистрация: 17.10.2009
Сообщений: 739
15.05.2012, 22:48     Создать класс! #2
наработки есть?тут с нуля никто писать не будет
ARTLINE-NN
1 / 1 / 0
Регистрация: 30.03.2012
Сообщений: 82
15.05.2012, 22:52  [ТС]     Создать класс! #3
Если бы были наработки сам бы сделал, а так с нуля надо создать((
Почему и обратился к форумчанам))) Есть же добрые люди на планете! наверно...
sergeu90
27 / 28 / 3
Регистрация: 17.10.2009
Сообщений: 739
15.05.2012, 22:55     Создать класс! #4
тут люди помогают а не делают за вас
ARTLINE-NN
1 / 1 / 0
Регистрация: 30.03.2012
Сообщений: 82
15.05.2012, 22:58  [ТС]     Создать класс! #5
Может найдётся хороший человек который сделает)
буду очень рад...:dance3:
ARTLINE-NN
1 / 1 / 0
Регистрация: 30.03.2012
Сообщений: 82
17.05.2012, 01:45  [ТС]     Создать класс! #6
Вот создал иерархию, посмотрите!? правильно ли?


C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
#include <iostream>
#include <string.h>
 
 
using namespace std;
 
 
Class Matrix
{
Public:
Matrix ()
Matrix (char*marka, char*quality, int speed);
Matrix (const Matrix & r);
~Matrix ();
void Print () const;
Protected:
Char*marka;
int speed;
char*quality;
};
 
#include "Matrix.h"
 
Matrix :: Matrix () : quality (low), speed (30)
{
marka=new char [50];
strcpy (marka, "Epson, Canon, HP");
Matrix :: Matrix (char*marka, char*quality, int speed): quality (_quality), speed(_speed)
{
marka=new Str [strlen(_marka)+1];
strcpy(marka,_marka);
}
Matrix :: Matrix (const Matrix & r) : quality (r.quality), speed (r.speed)
{
marka=new char [strlen (r.marka) +1];
strcpy (marka, r.marka);
}
Matrix :: Matrix ()
{
delete[]marka;
}
void Matrix :: Print () const
{
cout << "Matrix printer" << endl;
cout << marka << endl;
cout << quality << endl;
cout << speed << endl;
}
#include "Matrix.h"
 
 
Class Str : public Matrix
{
Public:
Str();
Str (char*marka, char*quality, int speed, char*Smetod);
Str (const Str &r);
~Str ();
void Print () const;
Protected:
char*Smetod 
};
#include "Str.h"
Str :: Str () : Matrix()
{
Smetod = new char [10];
strcpy (Smetod, "Types  of ink");
}
Str :: Str (char*marka, char*quality, int speed, char*Smetod) : Matrix (marka, quality, speed, Smetod)
{
Smetod = new Str [strlen (_Smetod)+1];
strcpy (Smetod_ Smetod);
}
#include "Str.h"
Str :: Str (const Str & r) : Matrix(r)
{
    Smetod = new char [strlen (r. Smetod)+1];
strcpy (Smetod, r.Smetod);
}
Str :: ~Str ()
{
delete [] Smetod;
}
void Str :: Print () const
{
Matrix :: Print ();
cout << "Jet printer" << endl;
cout << Smetod << endl;
}
 
 
Class Laz : public Str
{
Public:
Laz ();
Laz (char*marka, char*quality, int speed, char*Smetod, char*tipmat);
Laz (const Laz &r);
~Laz ();
void Print () const;
Protected:
char*tipmat
};
#include "Str.h"
Str :: Str () : Matrix()
{
tipmat = new char [10];
strcpy (tipmat, "Appointment");
}
Str :: Str (char*marka, char*quality, int speed, char*tipmat) : Matrix (marka, quality, speed)
{
tipmat = new Str [strlen (_tipmat)+1];
strcpy(tipmat,_tipmat);
}
#include "Str.h"
Str :: Str (const Str & r) : Matrix(r)
{
tipmat = new char [strlen (r.tipmat)+1];
strcpy (tipmat, r.tipmat);
}
Str :: ~ Str ()
{
delete [] tipmat;
}
void Str :: Print () const
{
Matrix :: Print ();
cout << "Lazer printer" << endl;
cout << tipmat << endl;
}
 
 
 
 
int main()
{
Matrix mx ("Seiko", low, 40);
mx.Print ();
Str sr ("BJ-80", medium, 60, "Termo");
sr.Print ();
Matrix *p = &sr;
p->Print();
Laz lz ("LaserJet", high, 72, "Rulon", "Suvenir";
lz.Print ();
Str*pp=& lz;
pp->Print();
return 0;
}
Yandex
Объявления
17.05.2012, 01:45     Создать класс!
Ответ Создать тему
Опции темы

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