std::endian
From cppreference.com
                    
                                        
                    
                    
                                                            
                    |   Defined in header  <type_traits>
  | 
||
|   enum class endian {  | 
(1) | (since C++20) | 
Indicates the endianness of all scalar types:
-  If all scalar types are little-endian, 
std::endian::nativeequalsstd::endian::little -  If all scalar types are big-endian, 
std::endian::nativeequalsstd::endian::big 
Corner case platforms are also supported:
-  If all scalar types have sizeof equal to 1, endianness does not matter and all three values, 
std::endian::little,std::endian::big, andstd::endian::nativeare the same -  If the platform uses mixed endian, 
std::endian::nativedoes not equal eitherstd::endian::bignorstd::endian::little 
Possible implementation
enum class endian { #ifdef _WIN32 little = 0, big = 1, native = little #else little = __ORDER_LITTLE_ENDIAN__, big = __ORDER_BIG_ENDIAN__, native = __BYTE_ORDER__ #endif };
Example
| This section is incomplete Reason: no example  |