std::formatter<basic_stacktrace>
Материал из cppreference.com
< cpp | utility | basic stacktrace
Определено в заголовочном файле <stacktrace> | ||
template<class Allocator > struct formatter<basic_stacktrace<Allocator>>; | (начиная с C++23) | |
Специализация шаблона std::formatter для std::basic_stacktrace<Allocator> позволяет пользователям преобразовывать объект stacktrace в строку, используя функции форматирования, такие как std::format.
Спецификатор формата не допускается.
Объект трассировки стека s форматируется, как если бы он копировал std::to_string
(s) в вывод.
[править]Пример
Запустить этот код
#include <format>#include <iostream>#include <stacktrace> int main(){auto trace = std::stacktrace::current();std::cout<<std::format("{}\n", trace);}
Возможный вывод:
0# 0x0000000000402D97 in ./prog.exe 1# __libc_start_main in /lib/x86_64-linux-gnu/libc.so.6 2# 0x0000000000402CA9 in ./prog.exe
[править]Смотрите также
(C++20) | шаблонный класс, который определяет правила форматирования для данного типа (шаблон класса) |
(C++23) | печатает в stdout или в файловый поток, используя форматированное представление аргументов (шаблон функции) |