-3

我是 ruby​​ 新手,我正在单独在 ruby​​ 上构建一个小程序,问题是我试图启动它但没有成功

想象一下我有这个代码

#usr/bin/ruby

Class Whatever

   def get_user_input
     @user_input = gets.chomp
     user_doing(@user_input)
   end

   def user_doing
    #something
   end

end

我想要的是将我的 rb 文件提供给 ruby​​ 后立即调用 get_user_input 方法

我试图在初始化方法上调用它

   def initialize
    get_user_input
   end

我还尝试将其定义为“类方法”

   def get_user_input
     @user_input = gets.chomp
     user_doing(@user_input)
   end

但是它们似乎都不起作用,因为当我启动 rb 文件时,程序不会期望我的输入,所以我该怎么做呢?

4

1 回答 1

1

您只需定义一个类。你没有调用什么方法。只需添加Whatever.new.get_user_input到您的文件中。

#usr/bin/ruby

class Whatever

  def initialize(input)
    @input = input
  end

  def self.get_user_input
    whatever = new(gets.chomp)
    whatever.user_doing
  end

  def user_doing
    puts "Input was: #{@input}"
  end

end

Whatever.get_user_input

顺便说一句:您user_doing目前不接受 args。你可能想检查一下。

于 2013-09-28T15:53:41.530 回答