Kód Ext except
Z CHWiki
[editovat] Výjimky EXT knihovny
Zde je definice několika výjimek používaných v další EXT kódech. Hlavičkový soubor připojujte třeba takto:
#include "extexcept"
Tyto výjimky se zavádí pro zjednodušení pojmenovávání problémů. Všechny (access_denied a object_not_exists) jsou přímými potomky ext::exception, která je potomkem std::runtime_error, což je potomek std::exception, tzn. jejich zpracování by nemělo narušovat klasickou hierarchii.
[editovat] Zdrojový kód
[extexcept]
#ifndef EXTEXCEPT
#define EXTEXCEPT
#include <stdexcept>
namespace ext {
// ext::exception
// - base class for all ext exceptions
class exception : public std::runtime_error {
public:
explicit exception (const std::string & __arg)
: std::runtime_error (__arg) {};
};
// ext::access_denied
// - is thrown when there is access denied to some system resource
class access_denied : public exception {
public:
explicit access_denied (const std::string & __arg)
: ext::exception (__arg) {};
};
// ext::object_not_exists
// - is thrown when requested object doesn't exists
class object_not_exists : public exception {
public:
explicit object_not_exists (const std::string & __arg)
: ext::exception (__arg) {};
};
};
#endif
