<stdexcept>

std::logic_error

class logic_error;
逻辑错误异常

此类定义了用于报告程序内部逻辑错误的异常类型,例如违反逻辑前置条件或类不变量。

这些错误应该可以在程序执行前被检测到。

它被用作几个逻辑错误异常的基类,并声明为
1
2
3
4
class logic_error : public exception {
public:
  explicit logic_error (const string& what_arg);
};
1
2
3
4
5
class logic_error : public exception {
public:
  explicit logic_error (const string& what_arg);
  explicit logic_error (const char* what_arg);
};

它的同级类 runtime_error 用于作为报告只能在运行时确定的错误的异常的基类。

成员

构造函数
传递给 what_arg 的字符串与成员 what 返回的值内容相同。

此类从 exception 继承了 what 成员函数。

异常安全

强保证: 如果构造函数抛出异常,则没有副作用。

另见