我是
Ruby的新手.我熟悉其他几种语言.我的问题是关于调用方法失序.例如:
def myfunction myfunction2 end def myfunction2 puts "in 2" end
如何在声明之前调用myfunction2?有几种语言可以在顶部或.h文件中声明它.ruby如何处理它?
我总是需要遵循这个:
def myfunction2 puts "in 2" end def myfunction myfunction2 end
解决方法
在定义方法之前,无法调用方法.但是,这并不意味着你无法在myfunction2之前定义myfunction! Ruby具有后期绑定功能,因此在调用myfunction之前,myfunction中对myfunction2的调用不会与实际的myfunction2相关联.这意味着只要在声明myfunction2之后第一次调用myfunction,你应该没问题.
所以,这没关系:
def myfunction myfunction2 end def myfunction2 puts "in 2" end myfunction
这不是:
def myfunction myfunction2 end myfunction def myfunction2 puts "in 2" end