constexpr bool isBE() {
uint16_t x = 1;
return reinterpret_cast<uint8_t*>(&x)[0] == 0;
}
Czy powyższy kod gwarantuje poprawne sprawdzenie czy mam do czynienia z kolejnością bigendian ? Czy to jest wydajna metoda czasu kompilacji, lepsza od wykorzystania unii ? Jakie ma wady ?