Wenn dies Ihr erster Besuch hier ist,
lesen Sie bitte zuerst die Hilfe - Häufig gestellte Fragen
durch. Sie müssen sich vermutlich registrieren,
bevor Sie Beiträge verfassen können. Klicken Sie oben auf 'Registrieren', um den Registrierungsprozess zu
starten. Sie können auch jetzt schon Beiträge lesen. Suchen Sie sich einfach das Forum aus, das Sie am meisten
interessiert.
indem du sie von der 'Exception'-Klasse ableitest und bei einem 'throw' eine Instanz deiner Klasse übergibst. Schau die mal im Index der Onlinehilfe unter Exception (VCL-Version) nach.
Eine Exception ist eine ganz normale Klasse, sie kann noch weitere Informationen beinhalten, die dann im Konstruktor übergeben werden. So eine Klasse sollte jedoch primitiv gehalten werden, da die Exception ja im Fehlerfalle ausgelöst wird und je nachdem was für ein Koflikt der Auslöser war, sollte man den Rechner nicht übermäßig strapazieren.
Beispiel:
<pre>
class MyException
{
public:
int nIndex;
String sMessage;
};
//Aufruf:
...
throw MyException(5,"Hallo");
...
//fangen:
...
catch(MyException& E){ // Die Exception sollte als Referenz gefangen werden, damit keine Neue Instanz erzeugt werden muss
String s = MyException.Nachricht;
}
</pre>
Comment