The class serves as the base class for all exceptions thrown to report an argument that is out of its valid range.
class out_of_range : public logic_error {
public:
    explicit out_of_range(const string& message);
    explicit out_of_range(const char *message);
};
Remarks
The value returned by exception Class is a copy of message.data.
Example
// out_of_range.cpp
// compile with: /EHsc
#include <string>
#include <iostream>
using namespace std;
int main() {
// out_of_range
   try {
      string str( "Micro" );
      string rstr( "soft" );
      str.append( rstr, 5, 3 );
      cout << str << endl;
   }
   catch ( exception &e ) {
      cerr << "Caught: " << e.what( ) << endl;
   };
}
Output
Caught: invalid string position
Requirements
Header: <stdexcept>
Namespace: std
See Also
Reference
Thread Safety in the Standard C++ Library