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

Вниз

Написание оптимального кода под Delphi   Найти похожие ветки 

 
Fay ©   (2005-09-19 11:51) [0]

... есть такая статья
http://www.delphimaster.ru/articles/optimization.html
а в статье есть "Правило 12", гласящее
"Выносите инвариантный код за тело цикла. Наиболее частая ошибка – for i:=1 to length(str) do... Дело в том, что при каждой итерации будет вызываться функция length, что пагубно скажется на производительности."

Неужели сложно проверить? 8)


 
КаПиБаРа ©   (2005-09-19 12:03) [1]

Правило верное, а пример действительно неудачный. И в резюме он ссылается на этот пример.

А ты проверял это выражение вычисляется 1 раз при любых параметрах компилятора?


 
DiamondShark ©   (2005-09-19 12:04) [2]

Уже пинали.


 
DiamondShark ©   (2005-09-19 12:06) [3]


> А ты проверял это выражение вычисляется 1 раз при любых
> параметрах компилятора?

Это спецификация языка Паскаль.
Граничные выражения в for вычисляются один раз.


 
TUser ©   (2005-09-19 12:16) [4]

Эту статью тут как-то уже обсуждали. Там, кажется, и еще какие-то ляпы есть.

Может стоит удалять такое творчество?


 
Mystic ©   (2005-09-19 12:24) [5]

> Может стоит удалять такое творчество?

Лучше сообщить автору и исправить в следующей версии :)


 
isasa ©   (2005-09-19 13:07) [6]

>Граничные выражения в for вычисляются один раз.

Если вкл. Optimization {$O}, переделает на

for i:=length(str) downto 1 do...



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

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

Наверх




Память: 0.47 MB
Время: 0.027 c
3-1124768187
_sulent
2005-08-23 07:36
2005.10.09
Работа БД с MS SQL, что лучше?


1-1126856777
Alloun
2005-09-16 11:46
2005.10.09
TPageControl


14-1126763262
nk
2005-09-15 09:47
2005.10.09
Домен и Win XP


14-1126797084
ArtemESC
2005-09-15 19:11
2005.10.09
ОС


14-1126773985
SergProger
2005-09-15 12:46
2005.10.09
Файловая система