Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > Программа и интерфейс
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 26.06.2010, 12:46
DungeonLords DungeonLords вне форума
Активный
 
Регистрация: 21.07.2008
Сообщения: 257
Репутация: 14
Счастье Анализатор кода

Доброго всем вечера.

В моём модуле существует класс TGLCube. Его использует или не использует в своём проекте юзер. Юзер может сделать сколько угодно объектов с этим классом. Моя задача в том, чтобы посмотреть у каждого куба, обращался ли юзер к свойству GLCube1.Position.X или нет. Если да, то я буду генерировать кубик одним способом, если нет, то другим. Собственно вопрос: как посмотреть обращался или нет? Я думаю,
надо использовать какие-то директивы компилятору, но какие? Вот если бы было возможно объявить временную переменную (только для компилятора) и записать в неё значение, а потом, при генерации кубика, это значение прочитать, то было бы просто... Ах да, вот ещё, TGLCube находится в одном модуле, а .Position.X описано в другом.

Помогите пожалуйста, сегодня весь вечер над своей проблемой бьюсь.
__________________
Делаем'c разные игры. Искать на glscene.ru
Ответить с цитированием
  #2  
Старый 01.07.2010, 20:23
lmikle lmikle вне форума
Модератор
 
Регистрация: 17.04.2008
Сообщения: 8,024
Версия Delphi: 7, XE3, 10.2
Репутация: 49089
По умолчанию

Делай свойство через property.

Код:
TMyClass = class
private
  FIsAccessed : Boolean;
  FAnyProperty : Integer;
  function GetAnyProperty : Integer;
  procedure SetAnyProperty(Value : Integer);
public
  property AnyProperty : Integer read GetAnyProperty write SetAnyProperty;
end;
...

function GetAnyProperty : Integer;
begin
   FIsAccessed := True;
   Result := FAnyProperty;
end;

procedure SetAnyProperty(Value : Integer);
begin
   FIsAccessed := True;
   FAnyProperty :=  Value;
end;
Ответить с цитированием
  #3  
Старый 02.07.2010, 01:40
Kapitoshka438 Kapitoshka438 вне форума
Начинающий
 
Регистрация: 09.11.2009
Сообщения: 145
Репутация: 238
По умолчанию

Если жалко память под информацию об обращении к свойству. Можно ее хранить в динамическом массиве. Далее, после генерации кубов, установить длину массива в 0.

Можно отдельный раздел уже создавать: "Вопросы от DungeonLords". Один такой вопрос стоит сотни вопросов из раздела "Начинающим"
Ответить с цитированием
  #4  
Старый 02.07.2010, 01:43
Kapitoshka438 Kapitoshka438 вне форума
Начинающий
 
Регистрация: 09.11.2009
Сообщения: 145
Репутация: 238
По умолчанию

Непонятно только, на какой момент пользователи обращаются к свойству. Почему вопрос называется "Анализатор кода"?
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 10:55.


 

Сайт

Форум

FAQ

RSS лента

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2023

ВКонтакте   Facebook   Twitter