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

Вниз

Использование try/exception   Найти похожие ветки 

 
Галинка ©   (2004-07-01 11:47) [0]

Всем доброго времени суток )).

Проблема такая...:
1) есть функция
function GetLinesPoints(InFile:string):TLines;
var
L,P:integer;
Stri:string;
TekLines:TLines;
InF:Text;
begin
 AssignFile(InF,InFile);
 Reset(InF);
 L:=1;
  while not EoF(InF) do
   begin
    P:=0;
    SetLength(TekLines,L);
    ReadLn(InF,Stri);
     repeat
      Inc(P);
      SetLength(TekLines[L-1],P);
      TekLines[L-1,P-1]:=GetPoint(Stri);
      ReadLn(InF,Stri);
     until Stri="";
    Inc(L);
   end;
  if Odd(L) then ErrIndic(1);
 TekLines:=LinePointsSort(TekLines);
 Result:=TekLines;
end;

которая читает в массив пары координат, при помощи другой функции

function GetPoint(Arg:string):TPlPoint;
var
i:byte;
SubStr:string;
TekPoint:TPlPoint;
begin
 DecimalSeparator:=".";
 i:=0;
    repeat
     inc(i);
     SubStr:=copy(Arg,i,1);
    until SubStr=" ";
   SubStr:=copy(Arg,1,i-1);
    try
     TekPoint.X:=StrToFloat(SubStr);
    except
     on EConvertError do
      begin
       ErrIndic(1);
       Exit;
      end;
    end;
   SubStr:=copy(Arg,i+1,Length(Arg)-i);
    try
     TekPoint.Y:=StrToFloat(SubStr);
    except
     on EConvertError do
      begin
       ErrIndic(1);
       Exit;
      end;
    end;  
 Result:=TekPoint;
end;

2) Вызов производиться так

   MyLines:=Raschet.GetLinesPoints(OpenDialog.FileName);

Внимание вопрос: КАК СДЕЛАТЬ ТАК, ЧТОБЫ НА ПОЯВЛЕНИЕ ОШИБКИ ОСУЩЕСТВЛЯЛСЯ ВЫХОД ИЗ ЭТОГО ВЫЗОВА...


 
inic ©   (2004-07-01 11:52) [1]

Внутри
except
on SomeException

после своих обработок написать "raise;"


 
Гаврила ©   (2004-07-01 11:53) [2]

в секции Except поставь raise вместо exit



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

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

Наверх




Память: 0.47 MB
Время: 0.034 c
14-1088403217
ИМХО
2004-06-28 10:13
2004.07.18
Десять негритят Агаты Кристи


1-1088682822
Klavishnik
2004-07-01 15:53
2004.07.18
Про ячейки в StringGride


3-1087742426
Michail Dalakov
2004-06-20 18:40
2004.07.18
trigger s в oracle


14-1088431954
ййй
2004-06-28 18:12
2004.07.18
File and String


1-1088473840
GrayFace
2004-06-29 05:50
2004.07.18
Как поучить указатель на функцию объекта?