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

class выводящий эллементы другого класса... - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Проверить, являются ли данные три числа взаимно простыми http://www.cyberforum.ru/cpp-beginners/thread375170.html
1. Протабулируйте функции. Отрезок и шаг вводятся с клавиатуры: e^-x -x^3 2. Проверить, являются ли данные три числа взаимно простыми
C++ прямоугольная матрица. нужна помощь Дана прямоугольная матрица. Найти строку с наибольшей и наименьшей суммой элементов. Вывести на печать найденные строки и суммы их элементов http://www.cyberforum.ru/cpp-beginners/thread375162.html
Не получается перекрасить BMP-ку.What's the matter? C++
Всем привет. 1)Надо перекрасить BMP-ку в указанный user цвет.Конечно цвет меняется,но это происходит как-то странно.Можете глянуть код(см.ниже)? 2)После того,как я записываю все данные,в том числе...
C++ помогите пож-та написать программу
2005/4 - проверьте, не является ли слово "кас" корнем слова без приставки. - Отделите в слове повторяющиеся более двух раз буквы запятыми. - Вычеркните из слова букву, предшествующую сочетанию...
C++ strcmp не работает! http://www.cyberforum.ru/cpp-beginners/thread375152.html
Ниже изложенная функция должна проверять не выходит ли за данный диапазон введенное число. Загвоздка вот в чем: strcmp сравнивает строки посимвольно, а у меня строка s почему то имеет значение...
C++ deck, stack, queue Здраствуйте,проблема такова, написал программу в которой реализованы дек, стек и очередь, когда в меню выбираю дек, стек или очередь открываеться новое меню для каждой из программы и в этих меню... подробнее

Показать сообщение отдельно
OLLEGATOR
Linux-оид
116 / 65 / 3
Регистрация: 15.02.2011
Сообщений: 353

class выводящий эллементы другого класса... - C++

30.10.2011, 21:41. Просмотров 292. Ответов 5
Метки (Все метки)

Сделать класс GROUP_OBJECT который будит выводить эллементы других классов на экран...
помогите доделать один класс...

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
#include <iostream>
#include <string.h>
#include <vector>
using namespace std;
 
class ELLEMENTS{ // Базовый класс...
 
protected:
 
    int x;
    int y;
    char color[50];
    vector <ELLEMENTS *> child;
 
public:
 
    ELLEMENTS(int xx, int yy, char *s){
        Set_X(xx);
        Set_Y(yy);
        Set_Color(s);
    }
 
    virtual ~ELLEMENTS(){}
 
    int Get_X(){ return x; }
    int Get_Y(){ return y; }
    char *Get_Color(){ return color; }
 
    void Set_X(int xx){ x=xx; }
    void Set_Y(int yy){ y=yy; }
    void Set_Color(char *s){ strcpy(color,s); }
 
    void Add_Child(ELLEMENTS *p){ // Добавить ребёнка...
        child.push_back(p);
    }
 
    void Remove_Child(){ // Удалить ребёнка...
        child.pop_back();
    }
 
    virtual void Draw()=0; // У каждого своё имя...
 
 
 
};
 
class CIRCLE: public ELLEMENTS{ // Круг...
 
protected:
 
    int radius;
 
public:
 
    CIRCLE(int xx, int yy, char *s,int rad):ELLEMENTS(xx,yy,s){
        Set_Radius(rad);
    }
 
    ~CIRCLE(){}
 
    int Get_Radius(){ return radius; }
 
    void Set_Radius(int rad){ radius=rad; }
 
    void Draw(){ cout<<"Я есть круг!\n"; }
 
};
 
class RECTANGLE: public ELLEMENTS{ // Прямоугольник...
 
protected:
 
    int a;
    int b;
 
public:
 
    RECTANGLE(int xx, int yy, char *s, int aa, int bb):ELLEMENTS(xx,yy,s){
        Set_A(aa);
        Set_B(bb);
    }
 
    ~RECTANGLE(){}
 
    int Get_A(){ return a; }
    int Get_B(){ return b; }
 
    void Set_A(int aa){ a=aa; }
    void Set_B(int bb){ b=bb; }
 
    void Draw(){ cout<<"Я есть прямоугольник!\n"; }
 
};
 
class TRIANGLE: public ELLEMENTS{ // Треугольник...
 
protected:
 
    int a;
    int b;
    int c;
 
public:
 
    TRIANGLE(int xx, int yy, char *s, int aa, int bb, int cc):ELLEMENTS(xx,yy,s){
        Set_A(aa);
        Set_B(bb);
        Set_C(cc);
    }
 
    ~TRIANGLE(){}
 
    int Get_A(){ return a; }
    int Get_B(){ return b; }
    int Get_C(){ return c; }
 
    void Set_A(int aa){ a=aa; }
    void Set_B(int bb){ b=bb; }
    void Set_C(int cc){ c=cc; }
 
    void Draw(){ cout<<"Я есть треугольник!\n"; }
 
};
 
[COLOR="Red"]class GROUP_OBJECT: public ELLEMENTS{ // Выводит все эллементы на экран...
 
public:
 
    void Draw_Childs(){ // Показать детей...
 
        vector<ELLEMENTS*>::iterator i;
 
        for(i=child.begin();i!=child.end();i++){
            Draw();
        }
 
    }
 
};[/COLOR]
main.cpp

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
#include "All.h"
 
int main()
{
 
    CIRCLE a(10,20,"black",1);
    a.Add_Child(new CIRCLE(1,2,"s",3));
    a.Add_Child(new CIRCLE(1,4,"q",5));
    a.Add_Child(new CIRCLE(1,5,"x",4));
    a.Add_Child(new CIRCLE(1,8,"n",1));
 
    RECTANGLE b(50,60,"neon",1,2);
    b.Add_Child(new RECTANGLE(1,2,"c",45,56));
    b.Add_Child(new RECTANGLE(1,3,"co",45,56));
 
   [COLOR="red"] GROUP_OBJECT *p; 
 
    p=&a;
 
    p->Draw_Childs();
[/COLOR]
 
 
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru