![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Пользователь
Регистрация: 13.09.2008
Сообщений: 24
|
![]()
Добрый день. Помогите пожалуйста решить проблему на картинке.
![]() |
![]() |
![]() |
![]() |
#2 |
Пользователь
Регистрация: 12.06.2008
Сообщений: 76
|
![]()
Если я не ошибаюсь, то подобный трюк с предварителным объявлением сработает только в том случае, если у вас в MyClass хранится указатель на экземпляр класса SubmissionClass.
SubmissionClass *subClass; А иначе компилятору просто не достает информации о структуре класса SubMission. |
![]() |
![]() |
![]() |
#3 |
Форумчанин
Регистрация: 27.04.2009
Сообщений: 184
|
![]()
А почему не хотите избавится от Forward declatations поменяв структуры местами?
Hа C я могy пpосто делать ошибки, на C++ я могy их наследовать!
|
![]() |
![]() |
![]() |
#4 |
Пользователь
Регистрация: 12.06.2008
Сообщений: 76
|
![]()
Такое бывает, это как предпочтения сначало public описывать или наоборот private. Я раньше сам страдал подобными вещами )
|
![]() |
![]() |
![]() |
#5 |
Форумчанин
Регистрация: 27.04.2009
Сообщений: 184
|
![]()
Я точно сказать не могу !!! но по моему что бы определить размер MyClass (для выделения памяти) ему(компилятору) надо знать размер SubmissionClass !! В втором примере он неизвестен!!!
Hа C я могy пpосто делать ошибки, на C++ я могy их наследовать!
|
![]() |
![]() |
![]() |
#6 |
Пользователь
Регистрация: 12.06.2008
Сообщений: 76
|
![]()
Ну разумеется, я об этом и написал. Чтобы скопилировать MyClass ему не хватает информации о его структуре.
|
![]() |
![]() |
![]() |
#7 |
Форумчанин
Регистрация: 27.04.2009
Сообщений: 184
|
![]()
Dogmat Я с вами не спорю я просто постарался уточнить !
![]()
Hа C я могy пpосто делать ошибки, на C++ я могy их наследовать!
|
![]() |
![]() |
![]() |
#8 |
Пользователь
Регистрация: 12.06.2008
Сообщений: 76
|
![]()
А я тоже не спорю. Забавная у вас подпись)
|
![]() |
![]() |
![]() |
#9 | |
Пользователь
Регистрация: 13.09.2008
Сообщений: 24
|
![]() Цитата:
Неужели нет, подходящего для данной ситуации, способа предварительного описания классов. |
|
![]() |
![]() |
![]() |
#10 |
Пользователь
Регистрация: 12.06.2008
Сообщений: 76
|
![]()
зачем вам хранить объект класса? храните указатель на объект класса SubmissionClass, а в конструкторе MyClass создавайте и инициализируйте этот объект (subClass). Ну или заводите на каждый класс отдельный заголовочник и подключайте #include-ом. Насчет 100 связанных между собой классов в одном заголовочнике никогда не задумывался, но сколько пишу разочарований по поводу порядка определения классов не испытывал. Часто их не так уж и много на один заголовочник.
Последний раз редактировалось Dogmat; 01.07.2011 в 14:43. |
![]() |
![]() |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Как добавит описание класса в *.h фаил? | RFbager | Общие вопросы C/C++ | 10 | 03.11.2010 10:37 |
описание класса | SvetaLee | Помощь студентам | 1 | 30.10.2010 23:27 |
описание класса в паскале | ai\ekcah^p | Помощь студентам | 0 | 14.03.2010 17:31 |
Описание класса. | frem-dag | Общие вопросы C/C++ | 4 | 11.01.2010 19:53 |