std::endian
提供: cppreference.com
ヘッダ <bit> で定義 | ||
enumclass endian { | (1) | (C++20以上) |
すべてのスカラー型のエンディアンを表します。
- すべてのスカラー型がリトルエンディアンの場合、
std::endian::native
はstd::endian::little
と等しくなります - すべてのスカラー型がビッグエンディアンの場合、
std::endian::native
はstd::endian::big
と等しくなります
コーナーケースにあるプラットフォームもサポートされます。
- すべてのスカラー型の sizeof が 1 である場合、エンディアンは意味をなさず、3つの値
std::endian::little
,std::endian::big
,std::endian::native
はすべて等しくなります - 混合エンディアンを使用するプラットフォームの場合、
std::endian::native
はstd::endian::big
およびstd::endian::little
のいずれとも等しくありません
[編集]実装例
enumclass endian {#ifdef _WIN32 little =0, big =1, native = little #else little = __ORDER_LITTLE_ENDIAN__, big = __ORDER_BIG_ENDIAN__, native = __BYTE_ORDER__ #endif};
[編集]例
This section is incomplete Reason: no example |