gpt4 book ai didi

c# - 匹配整数类型名称的浮点类型名称?

转载 作者:行者123 更新时间:2023-11-30 18:09:37 25 4
gpt4 key购买 nike

我不得不说当我打开 C# 看到整数数据类型是 Int16,Int32 and Int64 时我很高兴.它消除了任何歧义,例如 int 随着年龄的增长而增加。

令我惊讶的是为什么没有或似乎没有Float16,Float32 and Float64或至少不在正常使用中:快速搜索 MSDN 将 float64 称为 R8(非托管类型),这与 double 不同

我的猜测是 Single 和 Double(甚至 Extended(Float80) 据我所知在 c# 中不存在)没有那么多歧义,我不确定如何为此编码重要。)尽管 Decimal 似乎是 Float128,而且我注意到它被称为“扩展浮点精度”,但我们应该看到一个 Int128 来匹配它吗?
编辑: Single 或 Double 中没有任何歧义(这是一个猜测,但它似乎是真的,我想为了清楚起见我会添加它。)

我们应该期待看到这种命名约定吗?/如果我们看到了,您会很感激吗?

或者我们应该更进一步,得到 Int<N>对于任意数字大小? (是的,我知道那里有支持这种事情的图书馆)

最佳答案

好吧,这里有各种不同的事情需要考虑:

  • .NET 公开的类型
    • 什么是可用的
    • 每种类型的名称
  • 什么最终被其他语言别名了,例如C# 使用 int意思是System.Int32

我个人更喜欢 Float32Float64作为 CLR 类型。我当然可以看到 F# 命名类型“float”(对于 System.Double )和“float32”(对于 System.Single )有些困惑。我不想Decimal被称为Float128 ;可能 Decimal128允许其他类似的类型。

请注意 Byte不是 UInt8顺便说一下 - 大概是因为字节通常用于任意二进制存储而不是真正的数字数量。

我认为没有太多理由为 Int<N> 设置任意值尽管。至少,我怀疑这种用法足够专业,可以将其归入自定义类库,而不是使其成为框架的一部分。 (但是请注意,BigInteger 是 .NET 4.0 的一部分。)

关于c# - 匹配整数类型名称的浮点类型名称?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2340994/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com