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

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

Войти
Регистрация
Восстановить пароль
 
Sid1057
5 / 5 / 2
Регистрация: 22.02.2013
Сообщений: 174
#1

Присваивание значений членам класса - C++

17.05.2013, 20:08. Просмотров 441. Ответов 11
Метки нет (Все метки)

Доброго времени суток. Возникла проблема, в классе имеется простая функция set, которая присваивает значения четырем элементам класса, однако создавая два объекта этого класса, выполнив функцию set для второго объекта, они одновременно присваиваются и первому, в чем проблема понять не могу, весь код отправлять не буду, т.к. он достаточно объемный, ниже приведены проблематичные участки.
C++
1
2
3
4
5
6
7
//set
set(X,Y,H,W){
x=X;
y=Y;
h=H;
w=W;
}
C++
1
2
3
4
5
myclass obj1, obj2;
obj1.set(10,20,40,20);
obj1.crt();
obj2.set(120,20,40,20);
obj2.crt();
crt() использует именно эти 4 параметра(рисует прямоугольник)
но затем имеется функция click(), с помощью которой и можно заметить ошибку, сколько бы объектов не создавалось, они все имеют параметры последнего, пожалуйста помогите.
Заранее спасибо.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
17.05.2013, 20:08
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Присваивание значений членам класса (C++):

Присваивание значений одного класса другому. - C++
Скажите, могу ли я присвоить значения одного объекта класса другому объекту того же класса? class card { //код код код }; int...

Присваивание значения членам структуры - C++
Вот я создал структуру: struct Circle { int x1; int x2; int y1; int y2; int r1; int r2; };

Доступ к членам класса класса - C++
Всем привет. Вобщем есть базовый класс, и два производных. Пользователь вводит координаты нужно проверить факт пересечения одной фигуры с...

Доступ к членам класса - C++
Объект класса не может получить доступ к своим переменным?

Доступ к членам класса - C++
Есть два класса: #include "stdafx.h" #include <iostream> using namespace std; class CPerson { /*закрытые члены*/ private:...

Инкрементация указателя по членам класса - C++
Вот такая задачка у меня попалась на тестировании: "Корректен ли данный код? Если да, то что будет выведено на экран? Аргументируйте свой...

11
metaluga145
243 / 244 / 20
Регистрация: 08.04.2013
Сообщений: 927
17.05.2013, 20:14 #2
Sid1057, а можно больше кода?
0
Sid1057
5 / 5 / 2
Регистрация: 22.02.2013
Сообщений: 174
17.05.2013, 20:18  [ТС] #3
metaluga145, весь он занимает очень большой объем, что конкретно вы бы хотели увидеть?
0
metaluga145
243 / 244 / 20
Регистрация: 08.04.2013
Сообщений: 927
17.05.2013, 20:21 #4
Sid1057, код события нажатия кнопки
0
Sid1057
5 / 5 / 2
Регистрация: 22.02.2013
Сообщений: 174
18.05.2013, 11:57  [ТС] #5
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
int click(){
        int c=0;
    if (mousex()<x+w&&mousex()>x&&mousey()>y&&mousey()<y+h&&mouseclick()==1){
                    c=1;
            setcolor(0);
            rectangle(x,y,x+w+1,y+h+1);
            while(mouseclick()==1){
            if(!(mousex()<x+w&&mousex()>x&&mousey()>y&&mousey()<y+h)){c=0;}
            else{c=1;}
            if(!c){crt();}
                }
            }
            return c;
    }
Добавлено через 2 минуты
metaluga145, а в главной части кода я запускаю цикл while(1) и проверяю условие if(obj1.click()){break;}
if(obj2.click()){cout<<"obj2.click";}

Добавлено через 15 часов 25 минут
у кого-нибудь есть идеи в чем может быть проблема?
0
Sid1057
5 / 5 / 2
Регистрация: 22.02.2013
Сообщений: 174
19.05.2013, 16:35  [ТС] #6
кто-нибудь, отзовитесь!
0
Kamikadze!
0 / 0 / 0
Регистрация: 19.05.2013
Сообщений: 13
19.05.2013, 16:37 #7
да да такая же проблема!
0
Croessmah
Ушел
Эксперт CЭксперт С++
13557 / 7707 / 872
Регистрация: 27.09.2012
Сообщений: 18,996
Записей в блоге: 3
Завершенные тесты: 1
19.05.2013, 16:41 #8
что такое x,y,h,w, как объявлены?
Случайно не статические члены класса?
0
Sid1057
5 / 5 / 2
Регистрация: 22.02.2013
Сообщений: 174
19.05.2013, 16:59  [ТС] #9
Croessmah, да
0
Tulosba
:)
Эксперт С++
4397 / 3233 / 297
Регистрация: 19.02.2013
Сообщений: 9,045
19.05.2013, 17:04 #10
Цитата Сообщение от Croessmah Посмотреть сообщение
Случайно не статические члены класса?
Цитата Сообщение от Sid1057 Посмотреть сообщение
Croessmah, да
Ну и чего Вы тогда хотели? Статические члены являются общими для всех экземпляров класса.
1
Croessmah
19.05.2013, 18:36
  #11

Не по теме:

Цитата Сообщение от Kamikadze! Посмотреть сообщение
да да такая же проблема!
Цитата Сообщение от Sid1057 Посмотреть сообщение
Croessmah, да
Вы сговорились? Одна и та же ошибка у обоих?

0
Sid1057
5 / 5 / 2
Регистрация: 22.02.2013
Сообщений: 174
19.05.2013, 19:01  [ТС] #12
Tulosba, большое спасибо
0
19.05.2013, 19:01
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
19.05.2013, 19:01
Привет! Вот еще темы с ответами:

Доступ к private членам класса - C++
Почему при таком объявлении не работает оператор вывода, по идее он же объявлен как друг класса и должен иметь доступ к членам этого...

Оператор this и обращение к членам класса - C++
строка this-&gt;b = new B; означает взять вдресс текущего объекта b и выделить под него память?так? class B{ public: int k; ...

Сложности с получением доступа к членам класса - C++
Попробую описать проблему, есть класс VstPlugin #include &quot;VstPlugin.h&quot; #include &quot;ExampleEditor.h&quot; using namespace std; ...

Доступ к членам одного класса с другого - C++
Есть три файла: A.cpp: #include &quot;B.cpp&quot; class AA { int A; public: AA(int a) { A = a;


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

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

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