range_error クラス
このクラスは、範囲のエラーを通知するためにスローされる例外すべてに対する基底クラスとして機能します (反復子ではなく数学の場合と同様)。
構文
class range_error : public runtime_error {
public:
explicit range_error(const string& message);
explicit range_error(const char *message);
};
解説
what によって返される値は、message.data()
のコピーです。 詳細については、「basic_string::data」を参照してください。
例
// range_error.cpp
// compile with: /EHsc
#include <exception>
#include <iostream>
#include <stdexcept>
#include <typeinfo>
using namespace std;
int main()
{
try
{
throw range_error("The range is in error!");
}
catch (const exception& e)
{
cerr << "Caught: " << e.what() << endl;
cerr << "Type: " << typeid(e).name() << endl;
}
}
/* Output:
Caught: The range is in error!
Type: class std::range_error
*/
要件
ヘッダー: <stdexcept>
名前空間: std