Sdílet prostřednictvím


domain_error – třída

Třída slouží jako základní třída pro všechny výjimky vyvolané hlášením chyby domény (jako v matematice, nikoli v sítích).

Syntaxe

class domain_error : public logic_error {
public:
    explicit domain_error(const string& message);

    explicit domain_error(const char *message);

};

Poznámky

Hodnota vrácená what() hodnotou je kopie message.data(). Další informace najdete v tématech what a data.

domain_error není vyvolán žádnými funkcemi v implementaci standardní knihovny C++, ale může to vyvolat knihovny třetích stran nebo uživatelský kód.

Příklad

// domain_error.cpp
// compile with: /EHsc
#include <exception>
#include <iostream>
#include <stdexcept>
#include <typeinfo>
using namespace std;

int main()
{
   try
   {
      throw domain_error("Your domain is in error!");
   }
   catch (const exception& e)
   {
      cerr << "Caught: " << e.what() << endl;
      cerr << "Type: " << typeid(e).name() << endl;
   }
}
/* Output:
Caught: Your domain is in error!
Type: class std::domain_error
*/

Požadavky

Header:<stdexcept>

Namespace: std

Viz také

logic_error – třída
Bezpečný přístup z více vláken ve standardní knihovně C++