std::formatter<basic_stacktrace>
Материал из cppreference.com
<tbody>
</tbody>
| Определено в заголовочном файле <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 или в файловый поток, используя форматированное представление аргументов (шаблон функции) |