繁体   English   中英

在irb中定义和调用方法

Defining and calling a method in irb

提示:本站收集StackOverFlow近2千万问答,支持中英文搜索,鼠标放在语句上弹窗显示对应的参考中文或英文, 本站还提供   中文繁体   英文版本   中英对照 版本,有任何建议请联系yoyou2525@163.com。

我正在努力理解OOP。 我正在尝试使用IRB与Ruby一起玩耍,并加深我的理解。

在IRB中

foo = Object.new

创建一个新对象但是,如果我尝试给irb一个定义,并在该对象上调用它,则它将不起作用。 (def是否必须在.rb文件中发生并加载到Ruby中?)

def bar "hello" end
2 个回复

您需要在要应用的类中定义方法。

class NewObject
  def foo
    puts "hello"
  end
end

这些方法称为:

x = NewObject.new
x.foo

您可以通过定义非特定于类的方法来创建它们:

 def bar
   puts "bar!"
 end

并将其称为:

bar

使用pry

gem install pry

irb

红宝石中的一切都是物体

对象上的点符号表示这是该对象的方法

这就是为什么您需要将其包装在类/模块中的原因

我建议在这里阅读更多信息: https : //rubymonk.com/learning/books/4-ruby-primer-ascent/chapters/45-more-classes/lessons/113-class-variables

1 与来自IRB的Ruby中的方法调用的混淆

我正在玩方法定义,并在IRB的main中调用它们。 以上是很好的,理解的。 现在让我们尝试一些不同的东西: 虽然对Foo的呼叫引发了上述错误,但下面的内容如何消除该错误? ...

2013-03-07 11:09:51 1 565   ruby
5 从生产 irb 调试到方法中

当我寻找问题时,例如使用特定的 ActiveRecord 对象时,我经常发现自己在我的生产系统上执行以下操作: 有时我无法重现,为什么article.do_something(3)会抛出错误,所以我想在生产模式下直接在我的服务器上调试它。 现在的问题是:如何使用对象/实例article上的参数 ...

7 IRB内部ri的未定义方法

在交互式ruby控制台内部,如果我键入ri,那么我得到一个未定义的方法错误,我是否必须明确地将文档安装在某个地方才能使其正常工作? ...

2010-05-22 21:37:19 3 2661   ruby
暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2022 STACKOOM.COM