Dor*_*ian 3 ruby history naming
我想知道为什么Ruby命名它Fixnum; 其他语言将其命名为Integer,Int,Number等.我看到了,Fixnum < Integer和Bignum < Integer,Integer < Numeric和Float < Numeric.我想这是因为它的大小:
1.class => Fixnum
(10**100).class => Bignum
Run Code Online (Sandbox Code Playgroud)
从文档:
保存可以在本机机器字(减1位)中表示的整数值.如果Fixnum上的任何操作超出此范围,则该值将自动转换为Bignum
为什么这个名字Fixnum?我想过固定数字,但它没有固定,也没有固定的大小数字.
这不是Ruby提出的 - 术语"fixnum"来自Lisp.就像在Ruby中一样,Lisp中的fixnum是一个可以用机器整数表示的数字.虽然我从来没有见过证明我是对的主要来源,但我总是假设这个名称的"修复"部分提到它只能代表一个固定的数字范围,与无限的bignum形成鲜明对比. (以牺牲性能更差为代价获得自由限制).
| 归档时间: |
|
| 查看次数: |
1819 次 |
| 最近记录: |