extra Angaben fuer Funktionen
-
Hi
Ich weiss nicht wie ich es anders beschrieben soll. Ich will es kurz und schmerzlos machen. Was bedeutetvoid func(int a) throw(bad_alloc, int) { ... }Dabei beziehe ich mich darauf was das throw hinter dem (int a) macht. Ähnliches habe ich auch schon in der Form
void func(int a) const { ... }gesehen. Und auch da nicht verstanden was das soll und macht.
Ich hoffe mir kann das jemand erklären.MFG
chewbo
-
Das const hinten dran bedeutet dass der this-Zeiger konstant ist. D.h. die Funktion darf keine Member des eigenen Objekts verändern (ausser mutable Member). Das zeigt Dir als Entwickler dass der Zustand des Objekts nach aussen in dieser Methode nicht verändert wird.
Und throw-Specifier geben an, welche Exceptions eine Methode werfen kann. Warum man throw-Specifier nicht angeben sollte, ist allerdings schon in einigen Threads hier beschrieben
