Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.11.25;
Скачать: CL | DM;

Вниз

Оптимизация   Найти похожие ветки 

 
Даддитс   (2007-05-03 20:03) [0]

У меня в программе используется такой фрагмент:

with ListView^ do
 for i:= 0 to 7 do
 begin
  S:= LVItems[LVCurItem - 1, i];
  LVItems[LVCurItem - 1, i]:= LVItems[LVCurItem, i];
  LVItems[LVCurItem, i]:= S;
 end;
end;


Вычитал в книге у Фленова, что в таком случае Делфи с каждым проходом цикла каждый раз обращается к ListView, чтобы определить LVCurItem, тем самым замедляя работу. Это правда? Может быть, стоит переписать примерно так:

with Films^ do
begin
 j:= LVCurItem;
 for i:= 1 to 4 do
 begin
  S:= LVItems[j - 1, i];
  LVItems[j - 1, i]:= LVItems[j, i];
  LVItems[j, i]:= S;
 end;
end;


 
Даддитс   (2007-05-03 20:05) [1]

т.е. переписать примерно так:

with Films^ do
begin
j:= LVCurItem;
for i:= 0 to 7 do
begin
 S:= LVItems[j - 1, i];
 LVItems[j - 1, i]:= LVItems[j, i];
 LVItems[j, i]:= S;
end;
end;


Плохо что в форуме нельзя отредактировать написанное сообщение ...


 
L`Autour ©   (2007-05-04 11:35) [2]

Ставь току останова, запусти программу и просматривай данный участок кода в скомпилированном виде через окно отладки CPU (Ctrl+Alt+C)



Страницы: 1 вся ветка

Текущий архив: 2007.11.25;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.019 c
2-1194076264
San1712
2007-11-03 10:51
2007.11.25
Почему при записи в строковую переменную возникает ошибка?


15-1193139603
oldman
2007-10-23 15:40
2007.11.25
MTV RUS позорит страну (оффтоп, но все таки)!


15-1192964081
foreverDelphi
2007-10-21 14:54
2007.11.25
помогите начать раскручивать прогу


15-1193333191
NeiL's
2007-10-25 21:26
2007.11.25
ООП


2-1193749164
Quart
2007-10-30 15:59
2007.11.25
DBGridDrawColumnCell