domain_error 类

此类用作所有引发报告域错误(按数学方式,而不是网络)的异常的基类。

语法

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

    explicit domain_error(const char *message);

};

备注

what() 返回的值是 message.data() 的副本。 有关详细信息,请参阅 whatdata

domain_error 不是由 Microsoft 实现 C++ 标准库中的任何函数引发的,但它可能由第三方库或用户代码引发。

示例

// 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
*/

要求

标头:<stdexcept>

命名空间: std

另请参阅

logic_error 类
C++ 标准库中的线程安全