Namespaces
Variants

std::basic_stacktrace<Allocator>:: current

From cppreference.net
static basic_stacktrace current ( const allocator_type & alloc =
allocator_type ( ) ) noexcept ;
(1) (depuis C++23)
static basic_stacktrace current ( size_type skip, const allocator_type & alloc =
allocator_type ( ) ) noexcept ;
(2) (depuis C++23)
static basic_stacktrace current ( size_type skip, size_type max_depth,

const allocator_type & alloc =

allocator_type ( ) ) noexcept ;
(3) (depuis C++23)

Soit s [ i ] (0 ≤ i < n ) désigne la ( i +1 )-ième entrée de la pile d'appels dans la trace de pile de l'évaluation courante dans le thread d'exécution actuel, où n est le nombre d'entrées dans la trace de pile.

1) Tente de créer un basic_stacktrace constitué de s [ 0 ] , s [ 1 ] , ..., s [ n - 1 ] .
2) Tente de créer un basic_stacktrace constitué de s [ m ] , s [ m + 1 ] , ..., s [ n - 1 ] , où m est min(skip, n ) .
3) Tente de créer une basic_stacktrace constituée de s [ m ] , s [ m + 1 ] , ..., s [ o - 1 ] , où m est min(skip, n ) et o est min(skip + max_depth, n ) . Le comportement est indéfini si skip + max_depth < skip (c'est-à-dire si le résultat mathématique de skip + max_depth dépasse la capacité de représentation).

Dans tous les cas, alloc est stocké dans le basic_stacktrace créé et utilisé pour allouer le stockage des entrées de la trace de pile.

Table des matières

Paramètres

alloc - allocateur à utiliser pour toutes les allocations mémoire du basic_stacktrace construit
skip - le nombre d'entrées de la trace de pile à ignorer
max_depth - la profondeur maximale des entrées de la trace de pile

Valeur de retour

Si l'allocation réussit, le basic_stacktrace décrit ci-dessus.

Sinon, un basic_stacktrace vide.

Exemple

Voir aussi

crée un nouveau basic_stacktrace
(fonction membre publique)
[static]
construit un nouveau source_location correspondant à l'emplacement du site d'appel
(fonction membre publique statique de std::source_location )