2010-05-08 13 views
9

Estoy tratando de escribir un script de Ruby en un archivo.Necesito una declaración anticipada en Ruby

Me gustaría saber si es posible escribir la función "principal" al principio, teniendo las otras funciones que se usan por main, definidas después. En otras palabras, me gustaría llamar a una función aún no definida, por lo que no depende del orden de definición. No es posible cambiar el orden porque arroja un error de "método no definido". En C/C++ utilizamos declaraciones avanzadas ... ¿hay algo similar en Ruby u otra solución a esto?

Respuesta

17

Solo necesita las funciones que llama para definirse cuando se ejecuta la función main, no cuando está definida. Entonces, la solución más fácil es escribir la función main al comienzo del script, pero llámalo al final.

def main 
    foo(42) 
    bar(24) 
end 

# definitions of foo and bar 

main 
Cuestiones relacionadas