Espacios de nombres
Variantes
Acciones

std::system_category

De cppreference.com
< cpp‎ | error
 
 
Biblioteca de servicios
 
Control de errores
Control de excepciones
Fallas del control de excepciones
(hasta C++17)
(hasta C++17)
(C++11)(hasta C++17)
(hasta C++17)
Códigos de error
Códigos de error
Categorías de excepciones
Aserciones
Facilidad system_error
system_category
(C++11)
(C++11)
(C++11)
 
Definido en el archivo de encabezado <system_error>
const std::error_category& system_category();
(desde C++11)
Obtiene una referencia al objeto de error de categoría estática de los errores reportados por el sistema operativo. El objeto es necesaria para anular el error_category::name() función virtual para devolver un puntero a la cadena "system". También es necesario reemplazar la función virtual error_category::default_error_condition() para asignar los códigos de error que encuentro POSIX errno valores a std::generic_category .
Original:
Obtains a reference to the static error category object for errors reported by the operating system. The object is required to override the virtual function error_category::name() to return a pointer to the string "system". It is also required to override the virtual function error_category::default_error_condition() to map the error codes that match POSIX errno values to std::generic_category.
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.

Contenido

[editar] Parámetros

(Ninguno)
Original:
(none)
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.

[editar] Valor de retorno

Una referencia al objeto estático de tipo no especificado de tiempo de ejecución, derivado de std::error_category .
Original:
A reference to the static object of unspecified runtime type, derived from std::error_category.
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.

[editar] Excepciones

Especificación noexcept:  
noexcept
  (desde C++11)

[editar] Ejemplo

#include <iostream>
#include <system_error>
#include <iomanip>
#include <string>
 
int main()
{
    std::error_condition econd = std::system_category().default_error_condition(EDOM);
    std::cout << "Category: " << econd.category().name() << '\n'
              << "Value: " << econd.value() << '\n'
              << "Message: " << econd.message() << '\n';
 
    econd = std::system_category().default_error_condition(10001);
    std::cout << "Category: " << econd.category().name() << '\n'
              << "Value: " << econd.value() << '\n'
              << "Message: " << econd.message() << '\n';
}

Salida:

Category: generic
Value: 33
Message: Numerical argument out of domain
Category: system
Value: 10001
Message: Unknown error 10001

[editar] Ver también

Identifica la categoría de error genérica.
(función) [editar]
(C++11)
La enumeración std::error_condition que lista todas las constantes de macros <cerrno> estándar.
(clase) [editar]