ist hier von http://www.tutorialspoint.com/cplusplus/cpp_exceptions_handling.htmthrow() nach Funktionsdeklaration in C++ Ausnahmestruktur?
#include <iostream>
#include <exception>
using namespace std;
struct MyException : public exception
{
const char * what() const throw()
{
return "C++ Exception";
}
};
verstehe ich die const
nach what
bedeutet, dass die Funktion keine Mitglieder der Struktur nicht verändert, aber was die throw()
am Ende bedeutet?
Tangential: gegeben "C++ Exception" ist funktionslokal und hat automatischen Speicher, könnte what() 'std :: badalloc 'werfen, wenn Sie nicht genügend Arbeitsspeicher hatten? – RJFalconer
@rjfalconer Warum denkst du, dass das automatische Speicher hat? Der Rückgabewert des unbenannten Zeigers tut es, aber das Array? – Yakk
Ah ja. Ich ignoriere den Rückgabetyp. Also die selbe Frage dann aber für jedes beliebige Beispiel wo der automatische Speicher verwendet wird: würde das die Verwendung eines solchen Ausnahme-Spezifizierers verbieten? – RJFalconer