加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

如何将参数传递给ruby中的别名方法

发布时间:2020-12-17 02:51:20 所属栏目:百科 来源:网络整理
导读:我想在 ruby中创建一个别名方法并将参数传递给它.我设法做了以下事情 class User def say_name puts "I'm sameera" endendclass User alias :tell_name :say_name def say_name puts "I'm sameera gayan" tell_name endenduser = User.newuser.say_name 它给
我想在 ruby中创建一个别名方法并将参数传递给它.我设法做了以下事情

class User
  def say_name
    puts "I'm sameera"
  end
end

class User
  alias :tell_name :say_name
  def say_name
    puts "I'm sameera gayan"
    tell_name
  end
end

user = User.new
user.say_name

它给了我出局

我是同一个gayan
我是同一个人

但现在我想将我的名字作为参数传递给第一个’say_name’方法.所以新代码就像

class User
  def say_name(name)
    puts "#{name}"
  end
end

class User
  alias :tell_name :say_name(name)
  def say_name(name)
    puts "I'm sameera gayan"
    tell_name(name)
  end
end

user = User.new
user.say_name("my new name")

但现在这不起作用(将参数传递给别名方法).所以我的问题是如何将参数传递给别名方法.

我希望你能清楚这个问题.提前致谢

干杯

sameera

解决方法

我尝试了这个,并找到了这个解决方案

class User

        def say_name(name)

              puts "#{name}"

        end

end

class User

        alias :tell_name :say_name

        def say_name(name)

              puts "Hi"

              tell_name(name)

        end

end

user = User.new

user.say_name("Rohit")

之所以这样,是因为我们无法将参数传递给别名.这就是你想要做的.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读