std::logic_error
Definido en el archivo de encabezado <stdexcept>
|
||
class logic_error; |
||
Define un tipo de objeto que se lanza como una excepción. Se informa de los errores que son consecuencia de una lógica defectuosa en el programa, tales como una violación de las precondiciones de lógica o invariantes de clase y se puede prevenir.
Ningún componente de la biblioteca estándar lanza esta excepción directamente, pero los tipos de excepción std::invalid_argument, std::domain_error, std::length_error, std::out_of_range, std::future_error, y std::experimental::bad_optional_access se derivan de std::logic_error
.
Contenido |
[editar] Funciones miembro
Construye el objeto excepción. (función miembro pública) |
std::logic_error::logic_error
explicit logic_error( const std::string& what_arg ); |
(1) | |
explicit logic_error( const char* what_arg ); |
(2) | (desde C++11) |
Construye el objeto de excepción con what_arg
como una cadena explicativa que se puede acceder a través de what().
Como al copiar std::logic_error
no se permite lanzar excepciones, este mensaje típicamente se almacena internamente como una cadena con conteo de referencias asignada separadamente. Esta es también la razón por la que no existe un constructor que tome un argumento de tipo std::string&&
: tendría que copiar el contenido de todas maneras.
Parámetros
what_arg | - | Cadena explicativa. |
Excepciones
Puede lanzar std::bad_alloc
Heredado de std::exception
Funciones miembro
[virtual] |
Destruye el objeto excepción. (función miembro virtual pública de std::exception )
|
[virtual] |
Devuelve una cadena aclaratoria. (función miembro virtual pública de std::exception )
|