ich ein Problem mit einem Namespace namens „Ausnahme“Namespace genannt ‚Ausnahme‘ führt Probleme zu kompilieren
Lassen Sie uns folgende Beispiel-Header betrachten:
#include <exception>
namespace exception
{
struct MyException : public std::exception
{};
}
struct AnotherException : public exception::MyException
{
AnotherException() : exception::MyException() { }
};
Dieser Header mit folgendem Fehler nicht kompilieren:
namespacetest.hpp: In constructor 'AnotherException::AnotherException()': namespacetest.hpp:12:48: error: expected class-name before '(' token namespacetest.hpp:12:48: error: expected '{' before '(' token
Es gibt zwei Lösungen:
1) qualifiziere den Namespace mit "::" in Zeile 12
2) Namespace in z. "exceptional"
Was ist der Grund, dass der Namespace "Exceptions" zu Verwirrung führt? Ich weiß, dass es eine Klasse std :: exception gibt. Ist das der Grund für das Problem?
Fühlt sich gut an, ein +1 zu bekommen, sobald du die Antwort postest? :) – jrok
+1 für das Sprichwort "injiziert" –