"将所有32位浮点运算都执行为64位浮点运算 "对.net的兼容性是更高还是更低?

问题描述 投票:0回答:1

在Xamarin.iOS项目属性中,在 "iOS Build "下有一个选项。"Perform all 32 bit float operations as 64 bit float"。

微软 似乎说使用32位 "会影响精度,可能还会影响兼容性",所以最好使用64位精度。

但是在visual studio中的文本弹出(当用光标悬停在 "将所有32位浮点运算都执行为64位浮点运算 "时)说 "使用64...与.net代码略有不兼容"。

那么到底是哪个呢?

ios .net visual-studio xamarin xamarin.ios
1个回答
1
投票

你看错了第一点的说法。微软并没有说使用32位的是 坏的,所以你需要使用64位。正好相反。

基本上,使用64位浮点运算总是比较好的。它们是默认启用的,并且根据 Xamarin.iOS文档中的浮点运算:

虽然这种更高的精度更接近开发者对桌面上C#中浮点运算的期望,但在移动端,性能的影响可能很大。

让我们来看看 代码分析工具 是。

Xamarin.iOS分析是一套规则,可以检查你的项目设置,帮助你确定是否有更好的更优化的设置。

因此,即使最好使用64位浮动,但这并不总是最好的选择。当你运行代码分析工具时,它会扫描你的项目,看看是否有更适合你的解决方案的配置(这取决于项目的流程)。

偶尔,64位浮动可能会给你带来弊大于利。在这种情况下,linter会警告你说 XIA0005: Float32Rule,这将建议你 取消勾选 的选项,就像微软的消息说的那样。

© www.soinside.com 2019 - 2024. All rights reserved.