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

организация разветвленной иерархии классов - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ В каждом байте перенести все единичные биты в середину http://www.cyberforum.ru/cpp-beginners/thread825780.html
Помогите написать программу(С++)В каждом байте перенести все единичные биты в середину.
C++ Задача. Распределить заказы между предприятиями так, чтобы надежность собираемых из них устройств была наибольшей Радиотехническое устройство состоит из m блоков. Надежность устройства (время наработки на отказ) определяется наименее надежным блоком. Блоки можно заказать на любом из n предприятий. При этом известна надежность каждого блока, изготовленного на каждом предприятии Cij, i=1..m, j=1..n. Каждое предприятие может специализироваться на производстве блоков только одного типа. Распределить заказы между... http://www.cyberforum.ru/cpp-beginners/thread825778.html
C++ Как установить GTK+ под Linux
Недавно решил попробовать программирование под Linux с помощью бибилотеки gtk. Какой пакет нужно скачать и установитть, что бы появилась возможность использовать gtk? При попытке скомпилировать приложение Code::blocks говорит "gtk.h: no such file or directory" При поиске по файлам gtk.h не обнаружена.
C++ Singleton и MVC
Здравствуйте уважаемые форумчане. Изучаю с++ и столкнулся с понятием паттернов и парадигмы MVC. Прочитав про паттерны и погуглив не совсем понял зачем они вообще нужны, ну и не стал заморачиваться этим вопроса, придет с опытом подумал. Прочитав про MVC подумал что Model, View, Controller это ничто иное как Singleton, я прав?
C++ Что удобней qmutex или boost mutex http://www.cyberforum.ru/cpp-beginners/thread825732.html
Что удобней, быстрей и безопасней?
C++ В строке найти и вывести на экран все слова длиною в три символа Доброго дня, помогите пожалуйста с C++. Вот условие: 4. В строке найти и вывести на экран все слова длиною в три символа(Описать две строки, суммарная длина которых не должна превышать восьмидесяти символов.) Вот примерный код программы(не моё условие, а начало как у меня должно быть): #include<iostream.h> #include<stdio.h> #include<conio.h> #include<string.h> подробнее

Показать сообщение отдельно
EvengarS
0 / 0 / 0
Регистрация: 02.04.2013
Сообщений: 33
04.04.2013, 14:04  [ТС]     организация разветвленной иерархии классов
Помогите написать конструкторы инициализации к классам (например для Rectangle, остальные сделаю по аналогии), ну и может будут какие-то замечания

C++ (Qt)
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
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
class Movable
{
public:
    virtual int getX() = 0;
    virtual int getY() = 0;
    virtual void moveTo(int, int) = 0;
    virtual ~Movable(){};
};
 
class MyWindow: public Movable
{
protected:
    int m_x, m_y;
public:
    void moveTo(int x, int y)
    {
        m_x = x;
        m_y = y;
        // message
    }
};
 
class Graph
{
public:
    virtual void draw() = 0;
    virtual ~Graph(){};
};
 
class Point: public Graph, public Movable
{
protected:
    int m_x, m_y;
public:
    Point();
    int getX()
    {return m_x;}
    int getY()
    {return m_y;}
    void moveTo(int x, int y)
    {
        m_x = x;
        m_y = y;
    }
    void move(int dx, int dy)
    {
        m_x+=dx;
        m_y+=dy;
    }
    void draw()
    {
        cout << "Point: x = " << m_x << ", y = " << m_y;
    }
};
 
class Rectangle: public Graph, public Movable
{
protected:
    int m_x, m_y, m_w, m_h;
public:
    Rectangle();
    int getX()
    {return m_x;}
    int getY()
    {return m_y;}
    void moveTo(int x, int y)
    {
        m_x = x;
        m_y = y;
    }
    void move(int dx, int dy)
    {
        m_x+=dx;
        m_y+=dy;
    }
    void setSize(int w, int h)
    {
        m_w = w;
        m_h = h;
    }
    void draw()
    {
        cout << "Rectangle: x = " << m_x << ", y = " << m_y << "w = " << m_w << "h = " << m_h;
    }
};
 
class Circle: public Graph, public Movable
{
protected:
    int m_x, m_y, m_r;
public:
    Circle();
    int getX()
    {return m_x;}
    int getY()
    {return m_y;}
    void moveTo(int x, int y)
    {
        m_x = x;
        m_y = y;
    }
    void move(int dx, int dy)
    {
        m_x+=dx;
        m_y+=dy;
    }
    void setRadius(int r)
    {
        m_r = r;
    }
    void draw()
    {
        cout << "Circle: x = " << m_x << ", y = " << m_y << "r = " << m_r;
    }
};
 
class Ellipse: public Graph, public Movable
{
protected:
    int m_x, m_y, m_w, m_h;
public:
    Ellipse();
    int getX()
    {return m_x;}
    int getY()
    {return m_y;}
    void moveTo(int x, int y)
    {
        m_x = x;
        m_y = y;
    }
    void move(int dx, int dy)
    {
        m_x+=dx;
        m_y+=dy;
    }
    void setSize(int w, int h)
    {
        m_w = w;
        m_h = h;
    }
    void draw()
    {
        cout << "Ellipse: x = " << m_x << ", y = " << m_y << "d1 = " << m_w << "d2 = " << m_h;
    }
};
 
class Background: public Graph
{
    void draw()
    {
        //
    }
};
 
 
void Main()
{
    Graph* ptr1 = new Point;
    Graph* ptr2 = new Rectangle;
    Graph* ptr3 = new Circle;
    Graph* ptr4 = new Ellipse;
        ptr1->draw();
        ptr2->draw();
        ptr3->draw();
        ptr4->draw();
        delete ptr1;
        delete ptr2;
        delete ptr3;
        delete ptr4;
}
 
Текущее время: 00:31. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru