Ruby中不是对象的“东西”的例子

“一切都是对象”是我学习Ruby的第一件事,但是在Peter Cooper的Beginning Ruby中:从新手到专业 ,提到“Ruby中几乎所有东西都是对象”。

你能给我一些Ruby中没有对象的例子吗?

跳到我脑海中最明显的就是积木。 可以通过在参数列表中使用&block参数表单或使用lambdaprocProc.new或(在Ruby 1.9中)使用“stabby lambda”语法,将块简单地引用到Proc对象。 但就其本身而言,它们不是对象。

另一个例子是运营商。

  1. 如果
  2. 其他
  3. {
  4. }

一般语言结构等…

我认为其他所有东西(包括方法)都是对象。

在词法分析器将脚本拆分为有意义的标记后,一切都是对象。 包括课程。 甚至像1这样的文字常量也是对象。 有些对象的语法可能不是纯粹的OO(即语法糖),但这主要是为了便于操作而不是任何东西。 块虽然不是严格的对象(但可以像某人说的那样转换为一个)。

在变量赋值的情况下,即product = 5 * 5 ,变量不是对象…所以将其添加到列表中