В рубине вы можете сделать это:
d = [1, 2, 3]
a, b, c = d
a
, b
и c
будут получать значения 1, 2 и 3 соответственно.
d
, в этом случае в Array
и ruby знает, чтобы назначить его содержимому a
, b
и c
. Но если d
был Fixnum
, например, только a
было бы присвоено значение d
, а b
и c
было бы назначено nil
.
Какие свойства d
позволяют использовать его для множественного присвоения? В моем изучении до сих пор я смог сделать экземпляры подклассов Array
таким образом.