Где проблема, как мне делать исключения для исключения/повышения?
Ответ 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.