pago y envío este código y la salidaCómo garantizar obras en rubí
def lab
yield
ensure
puts 'in ensure block'
true
end
puts lab { puts 'inside inline block'; false }
output is
#inside inline block
#in ensure block
#false
que estaba esperando que después se ejecuta el bloque a continuación, asegurar será ejecutado y puesto que asegure el retorno cierto, el resultado final de una llamada al método sería 'cierto'.
Wow. Ruby es increíble. – Trip
@trip: alegra que te guste - No es Rubí-específica en absoluto. La mayoría de los lenguajes con manejo de excepción funcionan de la misma manera (por ejemplo, Java, Python). C++ es una excepción a la regla, pero hay algunas cosas incluso más potente que puede hacer con los destructores, como [ScopeGuard] (http://www.drdobbs.com/cpp/184403758). –