logic_error, classe
Classe qui sert de classe de base pour toutes les exceptions levées pour signaler des erreurs normalement détectables avant l'exécution du programme, telles que les violations de conditions préalables logiques.
class logic_error : public exception {
public:
explicit logic_error(const string& message);
explicit logic_error(const char *message);
};
La valeur retournée par what()
est une copie de message.data()
. Pour plus d’informations, consultez what
et 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>
Espace de noms : std
exception, classe
Sécurité des threads dans la bibliothèque C++ Standard