Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: Общие вопросы > Что работает быстрее...


Автор: varra 15.9.2004, 12:15
пусть

Код

var
 x: integer;
 y: array[0..5] of integer;


что быстрее: High(y) или x+1 ?

Автор: _hunter 15.9.2004, 12:22
а почему бы самому не проверить? ;)
лучший способ по асм-коду походить, способ похуже -- кучу итераций сделать
( всеравно в будущем подобные вопросы появляться будут )

Автор: ~FoX~ 15.9.2004, 15:00
varra
Эквивалентно - если массив статический !!!
А вот если динамический, то x + 1 - быстрее

Автор: varra 16.9.2004, 10:15
~FoX~ , почему? (в случае динам.массива)

Автор: pascal 16.9.2004, 18:24
по тому что сначало функция High проверит наличие масива, потом заглянет в удалёные уголки памяти в поисках размера этого масива, а в статическом масиви Delphi вставит значение на этапе компиляции, даже будет быстрее чем x-1 (где x - длинна масива)...
не забывай проверять не пустой ли масив...

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)