std::text_encoding::text_encoding
来自cppreference.com
< cpp | text | text encoding
| constexpr text_encoding() = default; |
(1) | (C++26 起) |
| constexpr explicit text_encoding( std::string_view enc ) noexcept; |
(2) | (C++26 起) |
| constexpr text_encoding( std::text_encoding::id i ) noexcept; |
(3) | (C++26 起) |
构造一个新文本编码对象。
如果 enc 指名了除
NATS-DANO 或 NATS-DANO-ADD 以外的注册字符编码,那么所构造的对象会有对应的 MIBenum 值,否则它会有 MIBenum 值 std::text_encoding::id::other。 若 enc.size() > std::text_encoding::max_name_length || enc.contains('\0') 则其行为未定义。
如果 i 为 std::text_encoding::id::other 或 std::text_encoding::id::unknown,那么所构造的对象会有空的字符编码名称,否则它会有其对应名称之一的名称。
若 i 不是
std::text_encoding::id 的一个具名枚举项,则其行为未定义。Parameters
| enc | - | 字符编码名称 |
| i | - | MIBenum 值 |
示例
View on Compiler Explorer.
运行此代码
#include <text_encoding> int main() { constexpr std::text_encoding iso60 = std::text_encoding::ISO60DanishNorwegian; static_assert(iso60 == std::text_encoding("csISO60DanishNorwegian")); static_assert(iso60 == std::text_encoding("iso-ir-60")); static_assert(iso60 == std::text_encoding("NS_4551-1")); }
外部链接
| IANA 字符集名称与 MIBenum 值注册表。 |