Ruby仅具有self而没有.method的行会做什么?

问题描述

我试图以从未使用Ruby进行编程的C#学生的身份来理解此Ruby代码。除了上面仅带有self的那一行之外,我对大多数其他功能都有很好的想法。我将不胜感激您的理解。我最好的猜测是self用于调用类的initialize函数,但我不确定100%。

def link(cell,bidi=true)
  @links[cell] = true
  cell.link(self,false) if bidi
  self
end

解决方法

每个方法都会返回一些信息。通过显式的return行,或者如果没有显式的返回,则返回最后执行的行。

在您的示例中,self使方法返回对象,该对象是该方法的接收者……通常是定义方法的类的实例,尽管它可以被其他类继承,或可能来自包含的模块(mixin)。

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...