Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 06.01.2012, 15:22   #1
Jugger
Пользователь
 
Регистрация: 30.01.2008
Сообщений: 99
По умолчанию Проблема с взаимодействием классов

Есть два класса, первый используется во втором и второй в первом
При этом при использовании второго класса в первом компилятор ругается на то что второй еще не объявлен
Если объявить второй класс перед первым, а определять после, то ругается что объявляю два раза
Как тут сделать ?
Код:
class A{
...
B a;                          //error C2065: 'B' : undeclared identifier
...
};
class B{
...
B(A &a){...}
...
}
Код:
class B;           //error C2079: 'a' uses undefined class 'B'
class A{
...
B a;                         
...
};
class B{
...
B(A &a){...}
...
}
Код:
class B{};       
class A{
...
B a;                         
...
};
class B{                          //error C2011: 'B' : 'class' type redefinition
...
B(A &a){...}
...
}
Jugger вне форума Ответить с цитированием
Старый 06.01.2012, 18:11   #2
Rififi
Старожил
 
Регистрация: 19.08.2009
Сообщений: 2,119
По умолчанию

Jugger

Предварительная декларация класса помогает, если используется указатель или ссылка на класс. Иначе нужно полное определение.
Rififi вне форума Ответить с цитированием
Старый 06.01.2012, 18:44   #3
Jugger
Пользователь
 
Регистрация: 30.01.2008
Сообщений: 99
По умолчанию

Ясно

Ну я могу создать указатель на объект вместо самого объекта, но мне все равно надо вызывать методы, и когда я их буду вызывать будет возникать эта же проблема

Может есть другие способы её обойти ?

Можно тупо объединить два класса в один, кое что подправить и должно работать

Но это как то тупо, наверное есть возможность сделать именно так как задумано
Jugger вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Проблема с взаимодействием динамической и статической памяти - обращение к статической переменной Comst95 Паскаль, Turbo Pascal, PascalABC.NET 1 03.01.2012 18:46
Проблема с методами классов в C#. Булкин Помощь студентам 2 19.07.2010 12:54
Проблема с созданием двумерного массива из объектов производных классов Vang Общие вопросы C/C++ 15 28.05.2010 17:04
Проблема с задачей на использование классов (С++) N1KeL Помощь студентам 4 25.07.2009 23:58
Создание классов и использование объектов классов при написании программ в среде C++. Frozen inside Помощь студентам 0 16.04.2009 23:18