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

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

Войти
Регистрация
Восстановить пароль
 
Slavoz
0 / 0 / 0
Регистрация: 13.03.2014
Сообщений: 5
#1

Получение доступа к переменным класса из другого класса - C++

23.03.2014, 18:01. Просмотров 395. Ответов 7
Метки нет (Все метки)

Как передать по ссылке переменную из класса А в метод класса В?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
23.03.2014, 18:01
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Получение доступа к переменным класса из другого класса (C++):

Mutex ограничение доступа к переменным класса - C++
Доброго времени суток. Подскажите пожалуйста, что я делаю не так? class Bitmap { private: mutex...

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

Получения доступа к переменной другого класса - C++
Нужно получить доступ к переменным x и y класса Field из класса Snake. Как это сделать? // "Змейка V0.1" #include <iostream> ...

Получение доступа к закрытым методом класса - C++
Как получить доступ к закрытому конструктору и деструктору?

Объявление объекта класса fstream в качестве статической компоненты другого класса - C++
Доброго времени суток. Есть задание, в котором говорится "...Перепишите программы из упражнений 4 и 6 таким образом, чтобы использовать...

Как получить private переменную класса, функцей членом другого класса - C++
Игра змейка: Есть класс поле в котором содержится размеры поля: class field { private: int FIELD_START; int...

7
zss
Модератор
Эксперт С++
6484 / 6047 / 1985
Регистрация: 18.12.2011
Сообщений: 15,680
Завершенные тесты: 1
23.03.2014, 18:06 #2
C++
1
2
3
4
5
6
7
8
9
10
class A
{
public:
  int a;
};
class B
{
public:
  void f(A& x){ x.a=0;}
};
0
Slavoz
0 / 0 / 0
Регистрация: 13.03.2014
Сообщений: 5
23.03.2014, 18:40  [ТС] #3
У меня классы находятся в a.h, a.cpp; b.h, b.cpp
Прототип в b.h:

C++
1
void f(a&);
b.cpp:
C++
1
2
3
4
5
6
7
8
9
10
#include <iostream>
using namespace std;
 
#include "a.h"
#include "b.h"
 
void b::f(a& x)
{
    x.var = var2;
}
Ошибка в b.h
error C2061: syntax error : identifier 'a'
Ошибка в b.cpp
rror C2511: 'void b::f(a &)' : overloaded member function not found in 'b'

В чем может быть ошибка?
0
ValeryS
Модератор
6679 / 5088 / 476
Регистрация: 14.02.2011
Сообщений: 17,086
23.03.2014, 18:44 #4
Цитата Сообщение от Slavoz Посмотреть сообщение
В чем может быть ошибка?
опиши перед использованием класс
C++
1
class a;
0
alsav22
5425 / 4820 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
23.03.2014, 18:44 #5
Цитата Сообщение от Slavoz Посмотреть сообщение
В чем может быть ошибка?
В этих файлах не видно класса a.
0
Slavoz
0 / 0 / 0
Регистрация: 13.03.2014
Сообщений: 5
23.03.2014, 18:54  [ТС] #6
Цитата Сообщение от alsav22 Посмотреть сообщение
В этих файлах не видно класса a.
Я объявляю класс b в b.h и в качестве аргумента ф-ции f передается ссылка класс а. Как мне сделать класс а видимым там?
0
alsav22
5425 / 4820 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
23.03.2014, 18:58 #7
Цитата Сообщение от Slavoz Посмотреть сообщение
Как мне сделать класс а видимым там?
А как вы делаете, чтобы класс был виден там, где нужно?
0
Slavoz
0 / 0 / 0
Регистрация: 13.03.2014
Сообщений: 5
23.03.2014, 19:02  [ТС] #8
Все, спасибо, проблема решена, include был не в том файле
0
23.03.2014, 19:02
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
23.03.2014, 19:02
Привет! Вот еще темы с ответами:

Приём константных векторов класса, как аргументов в методе другого класса - C++
Есть такой класс: class Order { private: int numberOrder; map &lt;string, int&gt; catalogDish; double totalCost; public: ...

Как переместить из стека одного класса в массив другого класса? - C++
// HW_on.24.11_classStack_SantaClaus.cpp: определяет точку входа для консольного приложения. // #include &quot;stdafx.h&quot; #include...

Создание объекта класса с полем являющимся объектом другого класса - C++
Bill a; cin&gt;&gt;a;//тут я ввел с помощью перегруженного оператора ElementSpiska c; //поля у Spiska(Bill A,int,string,int) ...

Ошибка при вызове метода класса в методе другого класса - C++
Господа программисты, возникла такая проблема. При вызове метода класса в методе другого класса выходит такая ошибка &quot; нестандартный...


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

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

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