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

Работа с классами - C++

Восстановить пароль Регистрация
 
Ярослав_З
0 / 0 / 0
Регистрация: 01.07.2012
Сообщений: 4
01.07.2012, 13:41     Работа с классами #1
Здравствуйте, я здесь первый раз, если что извините, за неккоректность, ввода или задания вопроса

Я написал (например):
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
class Figure
{
    bool visible;
protected:
    int color;
    int type, x, y; 
    virtual void draw()=0;
public:
    Figure(int type, int c, int x, int y) : type(type), color(c), x(x), y(y), visible(0) {}
    virtual ~Figure() {};
    void setcolor(int c);
    int getcolor() {return color;} 
    void show(); 
};
 
void Figure :: setcolor(int c)
{
    color=c;
    if(visible) draw(); 
};
 
 
void Figure :: show()
{
    visible = true;
    draw();
};
 
 
class Brick: public Figure
{
protected:
    int  w,h;
    void draw();
public:
    Brick(int type, int c, int x, int y, int w, int h) : Figure(type,c,x,y), w(w), h(h) {}
    ~Brick() {}
};
 
void Brick:: draw()
{
    :: setcolor(getcolor());
    moveto(x,y);
    lineto(x+w,y);
    lineto(x+w,y+h);
    lineto(x,y+h);
    lineto(x,y);
}
и создал динамически массив указателей на объекты:
Figure *A[100];

например пусть:
A[0]= new Brick(1,1,1,1,1,1); //Brick("type" , "цвет" , "х" , "у" , "ширина" , "высота")

Вопрос:
вот я хочу у A[0] получить чему равна type

пытался писать int a = A[0]->type;
но выходила ошибка
если не трудно, не могли бы вы дураку сказать, как получить значения у этого объекта?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
01.07.2012, 13:41     Работа с классами
Посмотрите здесь:

работа с классами C++
Работа с классами C++
C++ Работа с классами.
C++ Работа с классами
Работа с классами в С++ C++
C++ Работа с классами
C++ Работа с классами
Работа с классами C++
Работа с классами C++
C++ Работа с классами
C++ Работа с классами
C++ Работа с классами

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Root2x
 Аватар для Root2x
12 / 12 / 0
Регистрация: 21.05.2012
Сообщений: 52
01.07.2012, 13:45     Работа с классами #2
Ярослав_З, у вас type размещен в защищенной области ( protected ), разместите его в области public и все будет в порядке. Более подробную информацию сможете найти здесь:
http://cppforeach.wordpress.com/2008...ess_modifiers/
Ярослав_З
0 / 0 / 0
Регистрация: 01.07.2012
Сообщений: 4
01.07.2012, 13:50  [ТС]     Работа с классами #3
Спасибо огромное вам за помощь!
Andrey.K
 Аватар для Andrey.K
340 / 261 / 15
Регистрация: 14.11.2010
Сообщений: 480
01.07.2012, 14:22     Работа с классами #4
Цитата Сообщение от Root2x Посмотреть сообщение
Ярослав_З, у вас type размещен в защищенной области ( protected ), разместите его в области public и все будет в порядке. Более подробную информацию сможете найти здесь:
http://cppforeach.wordpress.com/2008...ess_modifiers/
А лучше всего сделать метод возвращающий конкретное поле класса. Так думаю будет првильней ,чем public, чтобы осталось сокрытие.
Yandex
Объявления
01.07.2012, 14:22     Работа с классами
Ответ Создать тему
Опции темы

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