Classe logic_error

A classe serve como classe base para todas as exceções geradas para relatar erros supostamente detectáveis antes da execução do programa, como violações de pré-condições lógicas.

Sintaxe

class logic_error : public exception {
public:
    explicit logic_error(const string& message);

    explicit logic_error(const char *message);

};

Comentários

O valor retornado por what() é uma cópia de message.data(). Para obter mais informações, consulte what e data.

Exemplo

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

Requisitos

Cabeçalho:<stdexcept>

Namespace: std

Confira também

Classe exception
Acesso Thread-Safe na Biblioteca Padrão C++