var matrixLst = new Array<Array>();
for (i in 0...width) {
var colLst = new Array<Float>();
for (j in 0...height) {
colLst.push(0.0);
}
matrixLst.push(colLst);
}
Такая конструкция не работает! Помогите:)
Ошибка в первой строке Invalid number of type parameters for Array
new Array<Array<Float>>()
просто тип должен быть прописан полностью, т.е. массив каких массивов создаем.
в вашем случае:
var matrixLst = new Array<Array<Float>>();ещё можно так
var MyArray : Array<Dynamic> = new Array();
// То же касается и хэшей:
var MyHash : Hash<Dynamic> = new Hash();
// и далее цепляем элементы:
var StringElement : String = "asdf";
var ChildHash : Hash<String> = new Hash();
ChildHash.set ("a", "A");
MyHash.set ("child_string", StringElement);
MyHash.set ("child_hash", ChildHash);
/**
* Таким образом мы получили хэш к которому прицепили хэш И СТРОКУ.
* Hash<Hash<String>> не позволил бы прицепить строку.
* Я часто использую такую конструкцию когда хочу чтобы функция возвращала
* кучу отладочной информации, которая может быть выражена и вложенными
* массивами и хэшами и Enum'ами и чем угодно ещё
*/
Спасибо за ответ!
Спасибо:)
Отправить комментарий