[C++] f(...) throw(...)

Hallo mal wieder :wink:

Ich sehe sehr oft in meinem Buch das f([…]) throw([…]) steht.

Was bewirkt oder bedeutet das throw hinter der Funktionsdeklaration ?

TNX

Micha

Ich sehe sehr oft in meinem Buch das f([…]) throw([…])
steht.

Was bewirkt oder bedeutet das throw hinter der
Funktionsdeklaration ?

Hi,

throw in einer Funktionsdeklaration gibt die Schnittstelle
der Funktion an. D.h., hier wird vereinbart, welche
Exceptions aus der Funktion nach außen geworfen werden
können.

Grundsätzlich kommt eine Funktionsdeklaration auch ohne
throw - Klausel aus, es ist jedoch kein guter Stil.
Dritte (ein anderer Entwickler) wissen dann nicht bescheid,
welche Exceptions und ob überhaupt abgefangen werden sollen.

Gruß,
Lydia