我刚认识鲁比我熟悉其他几种语言我的问题是调用方法的顺序不对例如:

def myfunction
    myfunction2
end

def myfunction2
    puts "in 2"
end

如何在声明myfunction2之前调用它有几种语言允许您在顶部或.h文件中声明它。鲁比是怎么处理的?
我是否总是需要遵循以下原则:
def myfunction2
    puts "in 2"
end

def myfunction
    myfunction2
end

当我需要为一个类调用def initialize中的另一个方法时,主要是这个问题困扰着我。

最佳答案

在定义方法之前不能调用它但是,这并不意味着您不能在myfunction之前定义myfunction2ruby具有后期绑定,因此在调用myfunction2之前,对myfunctionmyfunction2的调用不会与实际的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/

10-13 06:29