std::basic_stacktrace
De cppreference.com
Definido en el archivo de encabezado <stacktrace> | ||
template<class Allocator > class basic_stacktrace; | (1) | (desde C++23) |
using stacktrace = std::basic_stacktrace<std::allocator<std::stacktrace_entry>>; | (2) | (desde C++23) |
1) La plantilla de clase
basic_stacktrace
representa una instantánea de todo el listado de pila o su parte dada. Satisface los requerimientos de AllocatorAwareContainer, SequenceContainer, y ReversibleContainer, excepto que solo se soportan el movimiento, la asignación, el intercambio, y las operaciones para contenedores de secuencia calificados const
, y la semántica de las funciones de comparación es distinta de aquella requerida por un contenedor.2) Alias de tipo conveniente para el listado de pila,
basic_stacktrace
, usando el asignador de memoria por defecto, std::allocator.La secuencia de invocación de la evaluación actual x0 en el hilo de ejecución actual es una secuencia (x0, ..., xn) de evaluaciones tales que, para i≥0, xi está dentro de la invocación de función xi+1.
Un listado de pila es una representación aproximada de una secuencia de invocación y consiste en entradas de listado de pila.
Una entrada de listado de pila representa una evaluación en un listado de pila. Se representa por std::stacktrace_entry en la biblioteca estándar de C++.
Contenido |
[editar]Parámetros de plantilla
Allocator | - | Un asignador de memoria que se usa para adquirir/liberar memoria y para construir/destruir los elementos en esa memoria. El tipo debe cumplir con los requerimientos de Allocator. El programa está mal formado si Allocator::value_type no es std::stacktrace_entry. |
[editar]Tipos miembro
Tipo miembro | Definición |
value_type (C++23) | std::stacktrace_entry |
const_reference (C++23) | const value_type& |
reference (C++23) | value_type& |
const_iterator (C++23) | Tipo const RandomAccessIterator definido por la implementación que modela a random_access_iterator . |
iterator (C++23) | const_iterator |
reverse_iterator (C++23) | std::reverse_iterator<iterator> |
reverse_const_iterator (C++23) | std::reverse_iterator<const_iterator> |
difference_type (C++23) | Tipo entero con signo definido por la implementación. |
size_type (C++23) | Tipo entero sin signo definido por la implementación. |
allocator_type (C++23) | Allocator (asignador de memoria). |
[editar]Funciones miembro
(C++23) | Crea un nuevo objeto basic_stacktrace (función miembro pública) |
(C++23) | Destruye el objeto basic_stacktrace . (función miembro pública) |
(C++23) | Asigna al objeto basic_stacktrace (función miembro pública) |
[estático](C++23) | Obtiene el listado de pila actual o su parte dada (función miembro estática pública) |
(C++23) | Devuelve el asignador de memoria asociado. (función miembro pública) |
Iteradores | |
(C++23) | Devuelve un iterador al comienzo. (función miembro pública) |
(C++23) | Devuelve un iterador al final. (función miembro pública) |
(C++23) | Devuelve un iterador inverso al comienzo. (función miembro pública) |
(C++23) | Devuelve un iterador inverso al final. (función miembro pública) |
Capacidad | |
(C++23) | Comprueba si el objeto basic_stacktrace está vacío. (función miembro pública) |
(C++23) | Devuelve el número de entradas de listado de pila. (función miembro pública) |
(C++23) | Devuelve el número máximo posible de entradas de listado de pila. (función miembro pública) |
Acceso a elementos | |
(C++23) | Accede a una entrada de listado de pila especificada. (función miembro pública) |
(C++23) | Accede a la entrada de listado de pila especificada con comprobación de límites. (función miembro pública) |
Modificadores | |
(C++23) | Intercambia el contenido. (función miembro pública) |
[editar]Funciones no miembro
(C++23) | Compara los tamaños y el contenido de dos valores basic_stacktrace . (plantilla de función) |
Especializa el algoritmo std::swap (plantilla de función) | |
(C++23) | Devuelve una cadena con una descripción del listado de pila, basic_stacktrace (plantilla de función) |
(C++23) | Ejecuta salida de flujo del listado de pila, basic_stracktrace (plantilla de función) |
[editar]Clases auxiliares
Soporte para hash (resumen) para el listado de pila, std::basic_stacktrace (especialización de plantilla de clase) |
[editar]Notas
Se proporciona el soporte de asignadores de memoria personalizados para usar a basic_stacktrace
en una ruta de acceso activa o en ambientes embebidos. Los usuarios pueden asignar memoria de objetos stacktrace_entry
en la pila o en algún otro lugar, si es apropriado.
[editar]Ejemplo
Esta sección está incompleta Razón: sin ejemplo |
[editar]Véase también
(C++23) | Representación de una evaluación en un listado de pila (clase) |