短:
正确处理跨平台的序列化是很困难的,浮点endianness的奇怪可能性甚至更令人沮丧(对于那些认为ARM中间端浮点数是个好主意的人来说,诅咒是个好主意)。不幸的是,我可以在网上找到的关于c++20特性的文章提到了整数类型,但没有提到浮动类型。
标准委员会是否忽略了浮动和双重类型?
请告诉我不要。
此外,我可以找到的文章似乎表明,这些添加只会提供一种检测endianness的方法,而不是为不同编码之间的转换提供标准库函数。如果是这样的话,这似乎比标准化预处理器定义更有用。
对即将到来的c++20提案有了解的人能列出(或不包括)在新的endian特性中的内容吗?如果你碰巧知道,“为什么”会很棒)
发布于 2020-03-22 03:57:22
c++20 endian提案只处理整数类型,还是也提供了浮点数类型的信息?
就目前情况而言,它会告诉你,如果所有标量类型都是大的或小的,或者,可怕的是,它们不是,而你正在处理的是混合的恩典。
所有算术类型都包含在标量中,包括整数类型和浮点数类型。
原因:纯粹的推测,但是当看到移植到C++的无数个C类型双关语版本时,进行一个可移植的测试就是原因之一。
此外,我可以找到的文章似乎表明,这些添加只会提供一种检测endianness的方法,而不是为不同编码之间的转换提供标准库函数。如果是这样的话,这似乎比标准化预处理器定义更有用。
你只能用一种便携的方法来检测恩迪亚。
https://stackoverflow.com/questions/60795706
复制相似问题