44 #ifndef CCXX_EXCEPTION_H_
45 #define CCXX_EXCEPTION_H_
47 #ifndef CCXX_CONFIG_H_
48 #include <cc++/config.h>
51 #ifndef CCXX_STRING_H_
58 #if defined(HAVE_EXCEPTION)
59 #define COMMON_STD_EXCEPTION
63 #ifdef CCXX_NAMESPACES
75 class __EXPORT Exception :
public std::exception
81 Exception(
const String& what_arg)
throw();
82 virtual ~Exception() throw();
83 virtual const
char *getString() const;
84 virtual const
char *what() const throw();
93 class
__EXPORT IOException : public Exception
97 mutable char* _systemErrorString;
100 IOException(
const String &what_arg,
long systemError = 0) throw();
101 virtual ~IOException() throw();
103 virtual
long getSystemError() const throw();
104 virtual const
char* getSystemErrorString() const throw();
113 class
__EXPORT ThrException : public Exception
116 ThrException(
const String &what_arg) : Exception(what_arg) {};
125 class __EXPORT SyncException :
public ThrException
128 SyncException(
const String &what_arg) : ThrException(what_arg) {};
131 class __EXPORT InterruptException :
public ThrException
134 InterruptException() : ThrException(
"interrupted") {};
138 #ifdef CCXX_NAMESPACES
Common C++ generic string class.
This is a generic and portable string class.