【发布时间】:2018-11-03 07:04:34
【问题描述】:
我知道在 C# 中默认情况下不允许从 double 到 float 的隐式转换,但是有什么方法可以启用这种转换吗?有某种编译指示?我不担心缺乏精度(因为我的应用程序在任何地方都不需要超过浮点精度),而且只是对必须始终确保我明确地将所有十进制值声明为浮点数感到恼火,否则我会得到编译错误。
【问题讨论】:
-
不,没有。我想知道为什么有这么多数字被处理为浮点数并在代码中显式编写,以至于在后面添加单个字母是一个问题或负担,或者它们不能作为双精度数处理。
-
.NET 有一个特定的list of implicit numeric conversions,它们都用于扩大转换......即从具有较小范围的类型到具有较大范围的类型。像 double 到 float 这样的缩小转换需要显式转换。
-
你能举个例子说明你想避免什么吗?可能有另一种方法来处理您尝试做的事情,但是您还不清楚“将所有小数声明为浮点数”是什么意思。