命名空间
变体
操作

std::text_encoding::environment

来自 cppreference.cn
< cpp‎ | text‎ | text encoding
static text_encoding environment();
(自 C++26 起)

构造一个新的 text_encoding 对象,表示环境编码,该编码指的是执行环境的实现定义的字符编码方案。运行时的执行环境是程序运行所在的环境

执行环境中的环境编码与执行字符集的编码不同,后者是特定于区域设置的。换句话说,环境编码保持独立于区域设置,即 environment() 返回的值不受调用函数(例如 std::setlocale 和 POSIX 函数 setenv())的影响,这些函数可以修改环境。

除非 CHAR_BIT8,否则此函数将被删除。

目录

[编辑] 参数

(无)

[编辑] 返回值

持有环境字符编码表示的对象。

[编辑] 注释

环境编码可能与通过 std::locale().encoding() 访问的全局区域设置关联的编码不同。

在 Windows 平台上,环境编码可以通过 GetACP() 确定,然后映射到 MIBenum 值。

在 POSIX 平台上,环境编码与 POSIX 区域设置 "" 相关联,该区域设置可以实现为对应于 nl_langinfo_l() 的值,当环境区域设置 ""全局 C++ 区域设置在程序启动时设置为 "C" 之前设置时。

[编辑] 示例

[编辑] 参见

(C++26)
返回与区域设置关联的字符编码方案
(std::locale 的公共成员函数) [编辑]