Je v Ruby možné pomenovať premenné v skupinách, možno takto?
(variable1, variable2, variable3) = 0
odpovede:
2 pre odpoveď č. 1variable1 = variable2 = variable3 = 0
môžu byť bezpečné pre celé čísla, ale keďže sú v rubyvšetko je objekt, všetky budú skutočne smerovať k rovnakému objektu. Pri iných typoch môže niektoré operácie skončiť tak, že sa prevedie jedna na duplikát, ale nemôžete predpokladať, že to tak bude, a nakoniec môžete chtiac-nechtiac upraviť všetky naraz. Napríklad ak používate reťazce:
variable1 = variable2 = variable3 = "hello"
variable1.upcase!
puts variable1
puts variable2
puts variable3
>>> HELLO
>>> HELLO
>>> HELLO
Oveľa bezpečnejšie je paralelné zadanie:
variable1, variable2, variable3 = 0, 0, 0
editovať: pre prehľadnosť upravil niekoľko viet.
1 pre odpoveď č. 2
Môžete urobiť nasledovne:
variable1 = variable2 = variable3 = 0
Prečítajte si túto otázku : - is it right to assigning multiple variable like this a = b = c = d = 5 in ruby?
Všeobecný prístup teda je:
variable1, variable2, variable3 = [0] * 3