с ++ 20 и порядковый номер с плавающей точкой - PullRequest
4 голосов
/ 22 марта 2020

Short:

  • Относится ли предложение c ++ 20 к порядку байтов только к целочисленным типам или также предоставляет информацию о типах с плавающей точкой?
  • Будет ли добавлена ​​полезная стандартная библиотека функции для работы с порядком байтов?

Правильно иметь дело с сериализацией на разных платформах, а странные возможности порядка байтов с плавающей точкой еще более разочаровывают (проклятия для тех, кто решил, что плавающие числа со средним порядком байтов ARM были хорошая идея). К сожалению, статьи, которые я мог найти в Интернете и обсуждающие функции c ++ 20, упоминают целочисленные типы, но не числа с плавающей точкой.

Комитет по стандартам игнорировал числа с плавающей точкой и двойные типы?
Скажите, пожалуйста, нет.

Кроме того, статьи, которые я мог найти, казалось, предлагали, что дополнения будут только обеспечивать способ определения порядка байтов, но не будут обеспечивать стандартные библиотечные функции для преобразования между различными кодировками. Если бы это было так, это не кажется более полезным, чем просто стандартизация определения препроцессора.

Может ли кто-то, знающий о будущих предложениях c ++ 20, изложить, что (и не) включается в новые функции байтов? (... и «почему» было бы здорово, если бы вы узнали)

1 Ответ

2 голосов
/ 22 марта 2020

Имеет ли предложение с порядком байтов c ++ 20 только целочисленные типы, или оно также предоставляет информацию о типах с плавающей точкой?

В нынешнем виде оно сообщит вам, если все скалярные типы имеют большой или мало порядковый порядок - или, к сожалению, это не так, и вы имеете дело с mixed endianess.

Все арифметические c типы В скаляры включены как целочисленные, так и типы с плавающей запятой.

Почему: Чистая спекуляция, но создание переносного теста, когда были обнаружены десятки версий наказаний типа C, портированных на C ++, one why .

Кроме того, статьи, которые я мог найти, как представляется, предлагают дополнения только для определения порядка байтов, но не предоставляют стандартные библиотечные функции для преобразования между различными кодировками. , Если бы это было так, это не кажется более полезным, чем просто стандартизация определения препроцессора.

Вы можете использовать только переносимый способ определения порядка байтов.

...