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

Вниз

что за глюк ! pt.2   Найти похожие ветки 

 
Лом   (2006-01-27 04:54) [0]

function TForm1.norm: double;
var
Sz,z:double;
i:integer;
begin
 for i:=0 to 12 do
 begin
 z:=Random;
 Sz:=Sz+z;
 end;
 Result:=Sz-6;

end;

при отладке выделенная строка вдет сбя так
1. i=13
2. i=12
3. i=11
....
12.i=0

почему при отладке цикл проходи именно так!!!


 
Джо ©   (2006-01-27 04:57) [1]

> почему при отладке цикл проходи именно так!!!

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


 
Джо ©   (2006-01-27 04:58) [2]

Если уж так захотелось, отключи "Optimization" в опциях компилятора, хотя это будет только "назло себе".


 
лом   (2006-01-27 05:03) [3]

пытаюсь найти в чужом коде логическую ошибку и пытаюсь просмотреть каждую операцию ..

Чем негативным грозит отключение Optimization


 
Джо ©   (2006-01-27 05:09) [4]

> [3] лом   (27.01.06 05:03)
> Чем негативным грозит отключение Optimization

Тем, что генерируемый код будет неоптимизированным с точки зрения скорости выполнения (преимущественно).

В приведенном тобой коде от значения переменной i абсолютно ничего не зависит, имеет значение только кол-во итераций, поэтому оптимизатор и сгенерировал тот код, который ему показался более производительным. Или предпочтительным по каким-либо иным причинам.


 
Джо ©   (2006-01-27 05:10) [5]

П.С. Я не педант, но в форумах принято говорить "Спасибо" за оказанную помощь. Тем более, что тебе были даны ответы в двух ветках.


 
лом   (2006-01-27 05:17) [6]

Спасибо



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

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

Наверх




Память: 0.47 MB
Время: 0.05 c
4-1133445577
lucifer
2005-12-01 16:59
2006.02.12
Как закрыть окно(приложение) под курсором мыши!


2-1138260734
diwww
2006-01-26 10:32
2006.02.12
не работает VBScript


1-1137230335
V-A-V
2006-01-14 12:18
2006.02.12
Импорт справочника товара в 1с


15-1138229268
GanibalLector
2006-01-26 01:47
2006.02.12
rfc2812


2-1137833405
Killer2
2006-01-21 11:50
2006.02.12
Считываня даты