![]() |
|
|
![]()
|
|
| Imidazol |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 36 Регистрация: 14.5.2007 Репутация: нет Всего: нет |
Я создаю два .cpp файла: один с классом TGreen и один с классом TGreenPanel. Oба класса используют в себе обьекты друг от друга, используя #include "GreenButton.h" и #include "GreenPanel.h" но компилятор не может читать либо один, либо второй класс в зависимости от того, какой файл он читает первым, показывает ошибку Type name expected напротив декларации обьекта из другого класса. Как это можно избежать?:
файл GreenPanel.h: //--------------------------------------------------------------------------- #include "GreenButton.h" #ifndef GreenPanelH #define GreenPanelH //--------------------------------------------------------------------------- class TGreenPanel { public: int GreenButtonCount; TGreenPanel(int, TObject*); ~TGreenPanel(); TGreen *GreenButtons[20]; void deActivateGreenButtons(int); void Refresh(); }; #endif файл GreenButton.h: #ifndef GreenButtonH #define GreenButtonH //--------------------------------------------------------------------------- #include <Classes.hpp> #include <Controls.hpp> #include <StdCtrls.hpp> #include <Forms.hpp> #include <ExtCtrls.hpp> #include <ComCtrls.hpp> #include <iostream> #include "GreenPanel.h" //--------------------------------------------------------------------------- class TGreen : public TImage { typedef TImage inherit; public: bool Activated; int LowerIndex; int TagNumber; TGreenPanel *UsedPanel; __fastcall TGreen(int,AnsiString,TGreenPanel, TComponent *Owner); __fastcall LowerButton(int); void __fastcall TimeriS(TObject *Sender); void __fastcall TGreen::ClicK(TObject *Sender); void __fastcall TGreen::MousemovE(TObject *Sender, TShiftState Shift, int X, int Y); TTimer *Timeris; }; //----------------------------------------------------------------------------- //--------------------------------------------------------------------------- //extern PACKAGE TImage *TGreen; //--------------------------------------------------------------------------- #endif |
|||
|
||||
| dumb |
|
|||
![]() sceloglauxalbifacies ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 2929 Регистрация: 16.6.2006 Репутация: 32 Всего: 158 |
файл GreenPanel.h:
|
|||
|
||||
| Cheater |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 16 Регистрация: 11.2.2007 Где: Петропавловск-Кам чатский Репутация: нет Всего: нет |
а как же простое наследование?
|
|||
|
||||
| Imidazol |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 36 Регистрация: 14.5.2007 Репутация: нет Всего: нет |
|
|||
|
||||
![]()
|
| Правила форума "С++ Builder" | |
|
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Rrader. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C++ Builder | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |