range_error Class

The class serves as the base class for all exceptions thrown to report a range error (as in mathematics, not iterators).

Syntax

class range_error : public runtime_error {
public:
    explicit range_error(const string& message);
    explicit range_error(const char *message);
};

Remarks

The value returned by what is a copy of message.data(). For more information, see basic_string::data.

Example

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

Requirements

Header: <stdexcept>

Namespace: std

See also

runtime_error Class
Thread Safety in the C++ Standard Library