Ich habe gesehen, dass mindestens eine zuverlässige Quelle (eine von mir verwendete C ++ - Klasse) empfohlen hat, von anwendungsspezifischen Ausnahmeklassen in C ++ zu erben std::exception
. Die Vorteile dieses Ansatzes sind mir nicht klar.
In C # liegen die Gründe für das Erben auf der ApplicationException
Hand: Sie erhalten eine Handvoll nützlicher Methoden, Eigenschaften und Konstruktoren und müssen nur das hinzufügen oder überschreiben, was Sie benötigen. Mit std::exception
scheint es , dass alles , was man eine bekommen , ist what()
Methode zu überschreiben, die Sie könnten genauso gut selbst erstellen.
Welche Vorteile bietet die Verwendung std::exception
als Basisklasse für meine anwendungsspezifische Ausnahmeklasse , wenn überhaupt ? Gibt es gute Gründe, nicht zu erben std::exception
?