[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 1
  • 1
Использование переменных в классе
KISHECHNIKДата: Суббота, 10 Ноября 2007, 17:06 | Сообщение # 1
Morbidomaniac
Группа: Участники
Сообщений: 134
Награды: 0
Замечания: 0%
Статус:

Профессия: virtual grinder
Проблема вот какая... У меня имеется класс TPul, а также конструктор TPul.Create и процедура TPul.DoMove. Все они должны использовать одни и те же переменные a и b. Но если я объявлю эти переменные глобальными, то их значения будут одинаковыми для всех экземпляров данного класса, что мне категорически нежелательно, а засунуть их в класс TPul не удаётся. Может, я что-то не так делаю? На С++ это было бы так:
Code
class TPul (бла-бла-бла…)
{
     int a,b;
    бла-бла-бла…
}

В делфях класс выглядит так:
Code
TPul = class(TImageSprite)
    protected
     procedure DoCollision(Sprite: TSprite; var Done: boolean); override;
     procedure DoMove(MoveCount: integer); override;
    public
     constructor Create(AParent: TSprite); override;
     destructor Destroy; override;
   end;

И куда мне тыкать эти две переменные???
 
KISHECHNIKДата: Суббота, 10 Ноября 2007, 18:29 | Сообщение # 2
Morbidomaniac
Группа: Участники
Сообщений: 134
Награды: 0
Замечания: 0%
Статус:

Профессия: virtual grinder
Pardon за беспокойство, проблема решена. Делать нужно было как в С, а не мудрить:
Code
TPul = class(TImageSprite)
    a,b: integer;
    protected
     procedure DoCollision(Sprite: TSprite; var Done: boolean); override;
     procedure DoMove(MoveCount: integer); override;
    public
     constructor Create(AParent: TSprite); override;
     destructor Destroy; override;
   end;
 
  • Страница 1 из 1
  • 1
Поиск: