Форум: "Основная";
Текущий архив: 2007.05.27;
Скачать: [xml.tar.bz2];
Внизwatches выдает не то что должно быть по коду Найти похожие ветки
← →
KOSik © (2007-03-31 14:43) [0]Доброго времени суток.
Уж я не знаю, то ли что-то со мной, то ли что-то Delphi оптимизирует при компиляции, но в следующем коде:,
function FindCommonEndPoint(c1, c2 :TCurve):TPoint;
var
LoopAr1, LoopAr2 :array [0..1] of integer;
i, j :integer;
begin
if HaveCommonEndPoint(c1, c2) then begin
LoopAr1[0] := 0;
LoopAr1[1] := High(c1.ps);
LoopAr2[0] := 0;
LoopAr2[1] := High(c2.ps);
for i := 0 to High(LoopAr1) do begin
for j := 0 to High(LoopAr2) do begin
if SamePointFloat(c2.ps[LoopAr1[i]], c2.ps[LoopAr2[j]]) then begin
Result := Point(LoopAr1[i], LoopAr2[j]);
Exit;
end;
end;
end;
end
else
Result := Point(-1, -1);
end;
где
TPointFloat = record
x, y :calc;
end;
TCurve = record
ps :array of TPointFloat;
Group :integer;
end;
Здесь в цикле watches выдает i=2 и j=2. С чем это может быть связано?
← →
Loginov Dmitry © (2007-03-31 14:50) [1]Работает правильно? Тогда забей!
← →
KOSik © (2007-03-31 14:54) [2]
> Loginov Dmitry © (31.03.07 14:50) [1]
работает правильно. просто отладкой заниматься сложновато, когда watches выдает не те числа. а с чем это может быть связано? мне просто интересно.
← →
DrPass © (2007-03-31 17:05) [3]
> то ли что-то Delphi оптимизирует при компиляции
По умолчанию "что-то оптимизирует", причем значительно. Оптимизацию нужно выключать во время отладки, это делается в опциях компилятора
← →
vl_chel © (2007-04-02 11:29) [4]High(LoopAr1) - Не вижу смысла
А попробуй все значения вывести на экран, в т.ч. и границы цыкла
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2007.05.27;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.043 c