Spec-Zone.ru › C++

std::formatter<std::basic_stacktrace>

Определён в заголовке <stacktrace>
template< class Allocator >
struct formatter<std::basic_stacktrace<Allocator>>;
(начиная с C++23)

Специализация шаблона std::formatter для std::basic_stacktrace<Allocator> позволяет преобразовать объект stacktrace в строку с помощью функций форматирования, таких как std::format.

Спецификаторы формата не допускаются.

Объект stacktrace 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

См. также

formatter
(C++20)
задаёт правила форматирования для указанного типа
(шаблон класса)
print
(C++23)
выводит в stdout или файловый поток аргументы в форматированном представлении
(шаблон функции)

© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/cpp/utility/basic_stacktrace/formatter

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API