Как я могу объявить и создать переменную типа «массив массива» в Perl 6? В документации Perl 6 нет ничего об этом. Теоретически я могу это сделатьМассив переменной массива в Perl 6
@@var1
но это не работает.
Как я могу объявить и создать переменную типа «массив массива» в Perl 6? В документации Perl 6 нет ничего об этом. Теоретически я могу это сделатьМассив переменной массива в Perl 6
@@var1
но это не работает.
Так же, как и любой другой тип ограничения, просто положить Array
перед его именем при объявлении его:
my Array @array-of-arrays;
Теперь вы можете присвоить массив как элемент
@array-of-arrays[42] = [1, 2, 3];
или сделать использование авто-вивификации
@array-of-arrays[1][2] = 42;
Вы также можете выбрать более либеральные Positional
как его тип элемента, но это сломало бы самовоспроизводство.
Массив массивов можно рассматривать как многомерный, так что вы можете использовать мульти-индекс, а также для доступа к его элементам:
@array-of-arrays[1;2] = 42;
Насколько мне известно, собственно multi-dimensional arrays объявлен
my @multi-dim-array[5;6];
еще не реализованы в Ракудо, но они должны прибыть до Рождества.
В чем разница между 'my Array @ array-of-arrays' и' my @ array-of-arrays'?? –
check out 'say (my @). WHAT' vs' say (my Array @). WHAT' - первый имеет тип 'Array', последний имеет тип' Array [Array] ', то есть массив, который принимает только другие массивы как элементы – Christoph
и как насчет массива массива массива? –
Вы хотите объявить массив массивов или многомерный массив? – Christoph
Вам не нужно указывать, из чего состоит внешний массив. 'мой @array; @array [0] [0] = 1' –
@BradGilbert, Кристоф сказал, что я должен. –