#include <exception>
class bad_hmean : public std::exception
{
public:
const char * what() { return "bad arguments to hmean()"; }
...
};
class bad_gmean : public std::exception
{
public:
const char * what() { return "bad arguments to gmean()"; }
...
};
如果想以不同的方式处理这些派生而来的异常,可以在同一个基类处理程序中捕捉它们。
注意:这些类的构造函数接受一个string对象作为参数,该参数提供了方法what()以c风格字符串方式返回的字符数据。
logic_error 描述了典型的逻辑错误。
domain_error 数学函数 当定义的数值 不在其范围时返回错误。
invalid_error 指出函数传递了一个规定以外的值
length_error 用于指出没有足够空间来执行所需的操作。
out_of_bounds 通常用于指示索引错误,例如返回一个数组的索引超限。
rentime_error