为什么我们班不在ruby工作?

为什么我们班不在ruby工作?,ruby,syntax-error,Ruby,Syntax Error,我在IRB中测试我的代码,我输入了以下内容: class be def new_text text = gets() end def show_text puts "#{text}" end end 当我键入新文本时,它工作正常,但当我键入显示文本时,它出现了一个错误: NameError: undefined local variable or method `text' for #<BE:0xd3cc08> from (irb):

我在IRB中测试我的代码,我输入了以下内容:

class be
  def new_text
    text = gets()
  end
  def show_text
    puts "#{text}"
  end
end
当我键入新文本时,它工作正常,但当我键入显示文本时,它出现了一个错误:

NameError: undefined local variable or method `text' for #<BE:0xd3cc08>
        from (irb):14:in `show'
        from (irb):14:in `show'
        from C:/Program Files/Ruby1.9.2/bin/irb:12:in `<main>'

有没有办法解决这个问题?

将文本更改为实例变量:

class Be
  def new_text
    @text = gets()
  end
  def show_text
    puts "#{@text}"
  end
end

出现此错误是因为show_text方法试图访问名为@text的变量,该变量在原始示例中未定义。

将text更改为实例变量:

class Be
  def new_text
    @text = gets()
  end
  def show_text
    puts "#{@text}"
  end
end

出现错误是因为show_text方法试图访问一个名为@text的变量,该变量在原始示例中未定义。

将CamelCase用于类名如果不将CamelCase用于类名,它甚至不会编译如果不使用CamelCase,它甚至不会编译