std::basic_stacktrace - cppreference.com
De cppreference.com
| Definido en el archivo de encabezado |
||
|
|
(1) | (desde C++23) |
|
|
(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++.
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.
|
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).
|
Funciones miembro
(C++23) |
Crea un nuevo objeto basic_stacktrace (función miembro pública) [editar] |
(C++23) |
Destruye el objeto basic_stacktrace. (función miembro pública) |
(C++23) |
Asigna al objeto basic_stacktrace (función miembro pública) [editar] |
[estático] (C++23) |
Obtiene el listado de pila actual o su parte dada (función miembro estática pública) [editar] |
(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) |
Funciones no miembro
Clases auxiliares
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.