Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Этот класс служит базовым для всех исключений, создаваемых для сообщения об ошибках, которые можно обнаружить до выполнения программы, таких как нарушение логических предварительных условий.
Синтаксис
class logic_error : public exception {
public:
explicit logic_error(const string& message);
explicit logic_error(const char *message);
};
Замечания
Возвращаемое what()
значением является копия message.data()
. Дополнительные сведения см. в разделах what
и 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
*/
Требования
Заголовок:<stdexcept>
Пространство имен: std
См. также
Класс exception
Потокобезопасность в стандартной библиотеке C++