text_encoding encoding() const; // (1) C++26
概要
ロケールに関連付けられたエンコーディングを取得する。
適格要件
CHAR_BIT == 8であること
戻り値
*thisに関連付けられた実装定義のエンコーディングスキームを表すstd::text_encodingオブジェクトを返す。
例
#include <locale>
#include <text_encoding>
#include <print>
int main() {
// デフォルト("C")ロケールのエンコーディング
std::locale c_loc;
std::println("C locale encoding: {}", c_loc.encoding().name());
// 環境ロケールのエンコーディング
std::locale env_loc("");
std::println("Environment locale encoding: {}", env_loc.encoding().name());
// 環境エンコーディングとの比較
if (env_loc.encoding() == std::text_encoding::environment()) {
std::println("Locale encoding matches environment encoding");
}
}
出力例
C locale encoding: US-ASCII
Environment locale encoding: UTF-8
Locale encoding matches environment encoding
バージョン
言語
- C++26
処理系
- Clang: ??
- GCC: 15 ✅
- Visual C++: ??