- text_encoding[meta header]
- std[meta namespace]
- text_encoding[meta class]
- class[meta id-type]
- cpp26[meta cpp]
struct text_encoding::aliases_view : ranges::view_interface<text_encoding::aliases_view> {
constexpr implementation-defined begin() const;
constexpr implementation-defined end() const;
};aliases_viewは、エンコーディングのエイリアス(別名)一覧を提供するビュークラスである。
このクラスは以下のコンセプトをモデル化する:
ranges::range_value_t<text_encoding::aliases_view>およびranges::range_reference_t<text_encoding::aliases_view>はともにconst char*を表す。
#include <text_encoding>
#include <print>
#include <ranges>
int main() {
std::text_encoding enc{std::text_encoding::id::ShiftJIS};
auto aliases = enc.aliases();
// プライマリ名
if (aliases.begin() != aliases.end()) {
std::println("Primary name: {}", aliases.front());
}
// すべてのエイリアスを表示
std::println("All aliases:");
for (const char* alias : aliases) {
std::println(" {}", alias);
}
// random_access_rangeなのでサイズも取得可能
std::println("Number of aliases: {}", std::ranges::distance(aliases));
}- aliases()[link aliases.md]
- id::ShiftJIS[link id.md]
Primary name: Shift_JIS
All aliases:
Shift_JIS
MS_Kanji
csShiftJIS
Number of aliases: 3
- C++26
- Clang: ??
- GCC: 15 [mark verified]
- Visual C++: ??