Skip to content

Latest commit

 

History

History
91 lines (77 loc) · 1.87 KB

File metadata and controls

91 lines (77 loc) · 1.87 KB
title logic_error Class | Microsoft Docs
ms.custom
ms.date 11/04/2016
ms.reviewer
ms.suite
ms.technology
cpp-standard-libraries
ms.tgt_pltfrm
ms.topic article
f1_keywords
stdexcept/std::logic_error
logic_error
dev_langs
C++
helpviewer_keywords
logic_error class
ms.assetid b290d73d-94e1-4288-af86-2bb5d71f677a
caps.latest.revision 22
author corob-msft
ms.author corob
manager ghogen
translation.priority.ht
cs-cz
de-de
es-es
fr-fr
it-it
ja-jp
ko-kr
pl-pl
pt-br
ru-ru
tr-tr
zh-cn
zh-tw

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.

Syntax

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

    explicit logic_error(const char *message);

};  

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

exception Class
Thread Safety in the C++ Standard Library