Подтвердить что ты не робот

Как поднять исключения в Delphi?

Я прошу уроженца Delphi, а не Prism (net).

Это мой код:

raise Exception.Create('some test');

Необработанный idenitifier "Исключение".

Где проблема, как мне делать исключения для исключения/повышения?

4b9b3361

Ответ 1

Класс исключений "Исключение" объявлен в блоке SysUtils. Поэтому вы должны добавить "SysUtils" к вашему предложению use.

uses
  SysUtils;

procedure RaiseMyException;
begin
  raise Exception.Create('Hallo World!');
end;

Ответ 2

Не забудьте добавить SYSUTILS к вашим используемым устройствам.

Я также предлагаю вам хороший способ отслеживать категории, форматы сообщений и смысл исключения:

Type TMyException=class
public
  class procedure RaiseError1(param:integer);
  class procedure RaiseError2(param1,param2:integer);
  class procedure RaiseError3(param:string);
end;

implementation

class procedure TMyException.RaiseError1(param:integer);
begin
  raise Exception.create(format('This is an exception with param %d',[param]));
end;

//declare here other RaiseErrorX

Простым способом использования этого является:

TMyException.RaiseError1(123);

Ответ 3

Вам может потребоваться добавить sysutils в предложение uses, оно не встроено и необязательно в соответствии с Delphi в двух словах.

Ответ 4

Вы используете SysUtils, не так ли? Исключение указано там IIRC.