Richtige Exception für falsche Parameter

Für Fragen zur Programmiersprache auf welcher Lazarus aufbaut
Antworten
Benutzeravatar
m.fuchs
Lazarusforum e. V.
Beiträge: 2641
Registriert: Fr 22. Sep 2006, 19:32
OS, Lazarus, FPC: Winux (Lazarus 2.0.10, FPC 3.2.0)
CPU-Target: x86, x64, arm
Wohnort: Berlin
Kontaktdaten:

Richtige Exception für falsche Parameter

Beitrag von m.fuchs »

Hallo,

ich bin auf der Suche nach einer passenden Exception, die bei fehlenden Parametern einer Funktion geworfen wird. Zum Beispiel wenn nil statt einer Klasse übergeben wird.
Momentan habe ich mir dafür eine Exception namens EArgument gebastelt allerdings würde ich lieber eine (so vorhanden) bestehende Exception aus der RTL benutzen. Eine vom Namen passende wäre EInvalidArgument, diese befindet sich allerdings in der Unit Math und scheint daher nicht für allgemeine Parameterprobleme gedacht zu sein.

Wie handhabt ihr so etwas?

mfg
Micha
Software, Bibliotheken, Vorträge und mehr: https://www.ypa-software.de

Benutzeravatar
theo
Beiträge: 10500
Registriert: Mo 11. Sep 2006, 19:01

Re: Richtige Exception für falsche Parameter

Beitrag von theo »

Meistens einfach so:
raise Exception.Create('Invalid Parameter');

Man kann aber auch eine eigene Exception Klasse definieren:

type
EMyError = class ( Exception );

raise EMyError.Create ('Sorry my error!'):

Benutzeravatar
m.fuchs
Lazarusforum e. V.
Beiträge: 2641
Registriert: Fr 22. Sep 2006, 19:32
OS, Lazarus, FPC: Winux (Lazarus 2.0.10, FPC 3.2.0)
CPU-Target: x86, x64, arm
Wohnort: Berlin
Kontaktdaten:

Re: Richtige Exception für falsche Parameter

Beitrag von m.fuchs »

Ja, wie es technisch geht weiß ich schon. Mir geht es eher darum, was architekturmäßig günstig wäre. Und wenn es bereits eine passende Exception dafür gibt, möchte ich die natürlich verwenden.
Ansonsten bleibe ich bei meiner eigenen.

mfg
Micha
Software, Bibliotheken, Vorträge und mehr: https://www.ypa-software.de

Antworten