未显示局部变量输出



我正在尝试运行一个简单的程序:

class Pras
  def samleMethod
    a = 12
    p "a"
  end
end

没有错误,但为什么不显示输出?

编辑

class Pras
  def samleMethod
    a = 12
    p a
  end
end
class Pras
  def samleMethod
    a = 12
    p a
  end
end

在此中,您将使用名为 sampleMethod 的公共方法创建一个名为 Pras 的类。

我假设你对OOP有一些了解

因此,当您访问一个方法时,您需要创建一个类实例来访问它。

p =  Pras.new

现在,您可以使用实例访问该方法

p.sampleMethod

或两者在一行中作为

  Pras.new.sampleMethod

我建议你仔细看看这个嘟嘟。 http://www.tutorialspoint.com/ruby/ruby_quick_guide.htm

除非调用方法,否则不会执行这些方法。

在此处在线试用此代码


您打印的是字符串"a"而不是变量。请改用这个:p a

编辑:

正如罗斯蒂斯拉夫所提到的,你没有执行任何东西:尝试Pras.new.samleMethod

非常适合我:

这里我们定义类:

irb(main):014:0> class Pras
irb(main):015:1> def samleMethod
irb(main):016:2> a = 12
irb(main):017:2> p a
irb(main):018:2> end
irb(main):019:1> end
=> nil
以下是创建和实例化

该类的对象并使用实际打印调用实例方法的方法:

irb(main):020:0> Pras.new.samleMethod
12
=> 12

最新更新