description | title | ms.date | f1_keywords | helpviewer_keywords | ms.assetid | ||
---|---|---|---|---|---|---|---|
Learn more about: logic_error Class |
logic_error Class |
09/09/2021 |
|
|
b290d73d-94e1-4288-af86-2bb5d71f677a |
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);
explicit logic_error(const char *message);
};
The value returned by what()
is a copy of message.data()
. For more information, see what
and data
.
// logic_error.cpp
// compile with: /EHsc
#include <exception>
#include <iostream>
#include <stdexcept>
#include <typeinfo>
using namespace std;
int main()
{
try
{
throw logic_error("Does not compute!");
}
catch (const exception& e)
{
cerr << "Caught: " << e.what() << endl;
cerr << "Type: " << typeid(e).name() << endl;
}
}
/* Output:
Caught: Does not compute!
Type: class std::logic_error
*/
Header: <stdexcept>
Namespace: std