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

Вниз

примитив про цикл   Найти похожие ветки 

 
заза   (2008-02-03 15:57) [0]

for i := Low(RecArr) to High(RecArr) do
 with RecArr[i] do
   if (Edit1.Text <> RecData1) and (Edit1.Text <> RecData2) then
   begin
     //ok , test
     Halt;
   end else
   begin
     ShowMessage("Имена совпадают, что-то не так")
     Break;
   end;


RecArr - это массив состоящий из record"ов.

Я не пойму, почему Break не работает так как мне хочется. Если срабатывает else, после Break цикл крутится до следующего элемента и на нем уже срабатывает if. Т.е. Break не помогает.


 
Johnmen ©   (2008-02-03 16:00) [1]

А как ты проверил, что крутится?


 
Сергей М. ©   (2008-02-03 16:02) [2]


> после Break цикл крутится до следующего элемента


На основании чего ты утверждаешь это ?


 
Thrasher ©   (2008-02-05 14:26) [3]

Сделай условие по-другому:

for i := Low(RecArr) to High(RecArr) do
with RecArr[i] do
  if (Edit1.Text = RecData1) and (Edit1.Text = RecData2) then
  begin
    ShowMessage("Имена совпадают, что-то не так")
    Break;
  end
    else
 begin
    //ok , test
    Halt;
 end;

Странная вещь в этом коде - если имена совпадают, то Break, если не совпадают, то Halt. Автор разберись в коде!

Вообще такие конструкции надо стараться избегать. Дело в том, что при компилировании в машинный код, компилятор данную конструкцию компилирует БЕЗ сохранения флагов проверки.


 
Johnmen ©   (2008-02-05 14:39) [4]


> Thrasher ©   (05.02.08 14:26) [3]
> Сделай условие по-другому:

Логика "другого условия" не соответствует логике автора.
Учите азы булевой алгебры. А уж потом советуйте...


 
ketmar ©   (2008-02-05 15:34) [5]

>[3] Thrasher ©(05.02.08 14:26)
>Дело в том, что при компилировании в машинный код, компилятор данную
>конструкцию компилирует БЕЗ сохранения флагов проверки.

можно это перевести на понятный русский?



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

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

Наверх




Память: 0.48 MB
Время: 0.017 c
15-1201457457
AntonUSAnoV
2008-01-27 21:10
2008.03.02
проблема с кодировкой при установке своей проги


15-1201595132
needhelp
2008-01-29 11:25
2008.03.02
проюлема с HDD


3-1192156062
MIG
2007-10-12 06:27
2008.03.02
Редактируемые запросы


15-1201366691
ZoldBerger
2008-01-26 19:58
2008.03.02
Исходники Delphi Decompiler а


15-1201268375
guav
2008-01-25 16:39
2008.03.02
Exceptions considered harmful ?