Hi,
ich hab eine Klasse mit mehreren Memberobjekten, die Ressourcen besitzen (und beim jeweiligen Destruktor freigegeben werden).
Wenn die Ressource für das Objekt nicht erworben werden kann, wirft der Konstruktor eine Exception.
Was passiert für meine Klasse MyClass, wenn a erfolgreich initialisiert wurde und beim initialisieren von b eine Exception auftritt, mit den bereits erfolgreich erzeugten Memberobjekten? MyClass wirft die Excpetion weiter, sodass kein Objekt der Klasse MyClass erzeugt wird (also kann später kein Destruktor aufgerufen werden).
mfg
ich hab eine Klasse mit mehreren Memberobjekten, die Ressourcen besitzen (und beim jeweiligen Destruktor freigegeben werden).
Code:
class MyClass {
Resource a;
Resource b;
}
Wenn die Ressource für das Objekt nicht erworben werden kann, wirft der Konstruktor eine Exception.
Was passiert für meine Klasse MyClass, wenn a erfolgreich initialisiert wurde und beim initialisieren von b eine Exception auftritt, mit den bereits erfolgreich erzeugten Memberobjekten? MyClass wirft die Excpetion weiter, sodass kein Objekt der Klasse MyClass erzeugt wird (also kann später kein Destruktor aufgerufen werden).
mfg