logic_error Class
The class serves as the base class for all exceptions thrown to report errors presumably detectable before the program executes, such as violations of logical preconditions.
class logic_error : public exception {
public:
explicit logic_error(const string& message);
virtual const char *what();
};
Remarks
The value returned by what is a copy of message.data.
Example
// logic_error.cpp
// compile with: /EHsc /GR
#include <iostream>
using namespace std;
int main( )
{
try
{
throw logic_error( "logic error" );
}
catch ( exception &e )
{
cerr << "Caught: " << e.what( ) << endl;
cerr << "Type: " << typeid( e ).name( ) << endl;
};
}
Output
Caught: logic error
Type: class std::logic_error
Requirements
Header: <stdexcept>
Namespace: std
See Also
Reference
Thread Safety in the Standard C++ Library