gpt4 book ai didi

ruby - 如何处理 Ruby 中的方法顺序?

转载 作者:太空宇宙 更新时间:2023-11-03 16:40:26 25 4
gpt4 key购买 nike

我是 Ruby 新手。我熟悉其他几种语言。我的问题是关于乱序调用方法。例如:

def myfunction
myfunction2
end

def myfunction2
puts "in 2"
end

如何在声明之前调用 myfunction2?有几种语言允许您在顶部或 .h 文件中声明它。 ruby 是如何处理的?

我是否总是需要遵循这个:

def myfunction2
puts "in 2"
end

def myfunction
myfunction2
end

主要是当我需要为一个类调用 def initialize 中的另一个方法时,这让我很烦。

最佳答案

您不能在定义方法之前调用它。但是,这并不意味着您不能定义 myfunction之前myfunction2 ! Ruby 有后期绑定(bind),所以调用 myfunction2myfunction不会与实际的 myfunction2 相关联在你打电话之前 myfunction .也就是说只要先调用myfunction完成之后 myfunction2已宣布,您应该没问题。

所以,这没问题:

def myfunction
myfunction2
end

def myfunction2
puts "in 2"
end

myfunction

这不是:

def myfunction
myfunction2
end

myfunction

def myfunction2
puts "in 2"
end

关于ruby - 如何处理 Ruby 中的方法顺序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57648482/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com