std::to_string

来自cppreference.com
 
 
工具库
通用工具
格式化库 (C++20)
(C++11)
关系运算符 (C++20 中弃用)
整数比较函数
(C++20)(C++20)(C++20)
(C++20)
swap 与类型运算
(C++14)
(C++11)
(C++11)
(C++11)
(C++17)
常用词汇类型
(C++11)
(C++17)
(C++17)
(C++17)
(C++11)
(C++17)

初等字符串转换
(C++17)
(C++17)
栈踪
 
 
定义于头文件 <stacktrace>
std::string to_string( const std::stacktrace_entry& f );
(C++23 起)

返回带有 f 的描述的字符串。

标准推荐描述应该提供关于求值的信息,包括来自 f.source_file()f.source_line() 的信息。

参数

f - 要返回其描述的 stacktrace_entry

返回值

带有 f 的描述的字符串。

异常

可能抛出实现定义的异常。

注解

不提供对此函数的定制分配器支持,因为实现通常要求平台特定的分配、系统调用和大量 CPU 集中工作,而定制分配器不会对此函数提供便利,因为平台特定的操作耗费的时间数量级多于分配。

示例

#include <stacktrace>
#include <string>
#include <iostream>
 
int main()
{
    auto st = std::stacktrace::current();
    std::cout <<
        "Description of an empty stacktrace entry:\n" +
        std::to_string(std::stacktrace_entry{}) << '\n';
    if (st.size() > 0) {
        std::cout <<
            "Description of a non-empty stacktrace entry:\n" +
            std::to_string(st[0]) << '\n';
    }
}

可能的输出:

Description of an empty stacktrace entry:
 
Description of a non-empty stacktrace entry:
0x0000000000402DE9 in ./prog.exe

参阅

(C++23)
返回拥有 basic_stacktrace 的描述的字符串
(函数模板)