# Basisklasse undefiniert (mal wieder)



## Araiy (11. April 2007)

hi leute, ich bin ziemlich neu in C++ und muss nun gleich zum einstieg in die neue Programmiersprache mit einem ziemlichen wust an fertigem code klarkommen und es scheitert schon am ersten kompilieren. die header-datei sieht so aus:

____________________________________________________________________


#include <exception>
#include <string.h>
#include <stdio.h>


struct CError : public exception
{
    CError(const char* msg)                 { strcpy(message, msg); }
    CError(const char* fmt, int d)          { sprintf(message, fmt, d); }
    CError(const char* fmt, float f)        { sprintf(message, fmt, f); }
    CError(const char* fmt, const char *s)  { sprintf(message, fmt, s); }
    CError(const char* fmt, const char *s,
            int d)                          { sprintf(message, fmt, s, d); }
    char message[1024];         // longest allowable message
};


_________________________________________________________________________


die dazugehörende fehlermeldung beim kompilieren:


------ Erstellen gestartet: Projekt: StereoMatch, Konfiguration: Debug Win32 ------
Kompilieren...
main.cpp
c:\mrf\temp\stereomatch\error.h(19) : error C2504: 'exception': Basisklasse undefiniert
Das Buildprotokoll wurde unter "file://c:\mrf\temp\StereoMatch\Debug\BuildLog.htm" gespeichert.
StereoMatch - 1 Fehler, 0 Warnung(en)
========== Erstellen: 0 erfolgreich, Fehler bei 1, 0 aktuell, 0 übersprungen ==========


hab schon ne weile gegoogelt und keiner der tips hat mir weitergeholfen, denn die datei exception befindet sich wo sie hingehört: im include-ordner; also sollte doch die dazugehörende klasse gefunden werden?! 
btw. ich benutze visual studio 2005 und würde mich freuen, wenn mir jemand nen tipp geben könnte, wahrscheinlich überseh ich wieder was ganz offensichtliches


----------



## deepthroat (11. April 2007)

Hi.

Alle Klassen der C++ Standardbibliothek sind im Namensraum "std" definiert. Um auf die exception Klasse zuzugreifen:

```
#include <exception>

class X : public std::exception { };
```

Gruß

Bitte verwende doch die Code-Tags wenn du Quelltext postest. D.h. du solltest C++ Code z.B. in [code=cpp]...[/code] Tags einschliessen.


----------



## Araiy (12. April 2007)

Danke, genau das wars!


----------

