Exception
-
wenn ich angeben will, das eine Methode meiner Klasse bestimmte Exceptions wirft wo muss ich das dann angeben?
in der Deklaration?
in der Definiton?
in der Deklaration und in der Definiton?ich vermutte mal:
in der Deklaration und optional in der Definition
-
Ich habe mal wieder keine Ahnung davon, aber ich meine gehört zu haben, dass hinter der Funktionsdefinition bzw. Deklaration nen throw() kommen muss. In das throw kommen dann die Ausnahmen, bzw. die Basisklassen der Ausnahmen oder gar nichts, wenn du das net willst
-
@Vertexwahn:
Soweit ich weiß muss der Funktionskopf in diesem Fall in der Deklaration und in der Definition gleich sein.Caipi
-
wenn ich angeben will, das eine Methode meiner Klasse bestimmte Exceptions wirft wo muss ich das dann angeben?
Am Besten in der Dokumentation zur Methode. Von der Verwendung von Exception-Spezifikationen raten eigentlich alle C++ Experten ab.
Soweit ich weiß muss der Funktionskopf in diesem Fall in der Deklaration und in der Definition gleich sein
Jup. Die Exception-Spezifikation gehört mit zum Typ (ignorieren wir die typedef-Ausnahme mal) und muss daher in Deklaration und Definition gleich sein.
-
Am Besten in der Dokumentation zur Methode. Von der Verwendung von Exception-Spezifikationen raten eigentlich alle C++ Experten ab.
welche dokumentation?
Jup. Die Exception-Spezifikation gehört mit zum Typ (ignorieren wir die typedef-Ausnahme mal) und muss daher in Deklaration und Definition gleich sein.
in OOP für dummies werden nur bei den Deklarationen Exceptions angegeben - nicht aber bei der Definition
-
Vertexwahn schrieb:
Am Besten in der Dokumentation zur Methode. Von der Verwendung von Exception-Spezifikationen raten eigentlich alle C++ Experten ab.
welche dokumentation?
In der Dokumentation zur Klasse :).
HumeSikkins schrieb:
Am Besten in der Dokumentation zur Methode. Von der Verwendung von Exception-Spezifikationen raten eigentlich alle C++ Experten ab.
Warum das? (Sorry, bin Noob
)
Caipi
-
Guckst du:
http://www.gotw.ca/publications/mill22.htm
http://www.gotw.ca/publications/xc++s/boost_es.htm
http://www.boost.org/more/generic_exception_safety.html
-
HumeSikkins schrieb:
Guckst du:
http://www.gotw.ca/publications/mill22.htm
http://www.gotw.ca/publications/xc++s/boost_es.htm
http://www.boost.org/more/generic_exception_safety.htmlSuper, danke! Die URL (gotw.ca) muss ich mir sowieso mal merken
Caipi