Si consideri il seguente codice:Rubino - a capo e gli operatori
x = 4
y = 5
z = (y + x)
puts z
Come ci si aspetterebbe, l'uscita è 9
. Se si introduce una nuova riga:
x = 4
y = 5
z = y
+ x
puts z
Poi uscite 5
. Questo ha senso, perché è interpretato come due dichiarazioni separate (z = y
e +x
).
Tuttavia, non capisco come funziona quando si dispone di una nuova riga tra parentesi:
x = 4
y = 5
z = (y
+ x)
puts z
L'uscita è 4
. Perché?
+1. Stavo cercando di spiegare il concetto di base di comandi incompleti quando ho capito che l'output era 4, non 9. Good going :) – Matchu
Questo ha molto senso. Venivo dallo stesso esempio in Scala dove lo tratta come z = (y + x) e le uscite 9. Buona spiegazione :-) – mopoke
Le parentesi multilinea sono essenzialmente un blocco, e il valore del blocco è l'ultima dichiarazione in esso. – kejadlen