Exception: Wie werfen?



  • Hallo Forum,

    ich habe eine Exception Klasse geschrieben. Momentan werfe ich so:

    throw new Myclass("Datei konnte nicht geöffnet werden.", "Checken sie ob Datei vorhanden ist.", sFilename);

    Irgendwo hatte ich gelesen das Exceptions immer als Objekt geworfen werden müssen. (Und als Referenz gefangen werden müssen.) Hier werfe ich einen Pointer. Hat das irgendwelche Nachteile?

    Vielen Dank

    Boran



  • Ja, es hat einen Nachteil: Du mußt daran denken, die Exception selber wieder zu entsorgen, nachdem du sie verarbeitet hast.



  • Wer räumt auf?

    Was versprichst du dir durch werfen eines Zeigers?

    Lass einfach die drei zeichen n, e und w nach dem throw weg.



  • Das vereinfacht die Sache natürlich. Vielen Dank. 🙂



  • Hi,

    nur als Zusatzinfo: Exceptions werden automatisch kopiert !
    Deswegen muss die Exceptionklasse das ermöglichen und arbeitet der Fänger immer auf einer Kopie.
    Ist im "Standardbetrieb" kein Problem, kann aber im Einzelfall zu Verwirrung führen.

    Gruß,

    Simon2.


Anmelden zum Antworten