Ответ 1
Вы можете сделать Array((Int,Int),0)
для этого. Возможно, возможно добавить методы к getindex
, чтобы сделать работу (Int,Int)[]
, но я не уверен, что это того стоит. Не стесняйтесь открывать проблему.
Я не могу понять, как инициализировать пустой массив кортежей. manual говорит:
Тип кортежа значений - это набор типов значений... Соответственно, кортеж типов может использоваться везде, где ожидается тип.
Но это не работает:
myarray = (Int64,Int64)[]
Но это делает:
Int64[]
Казалось бы, тип ожидается перед пустыми квадратными скобками, но тип кортежа не работает. Этот синтаксис <type>[]
является единственным способом, которым я могу найти, чтобы получить пустой типизированный массив (другие методы, похоже, создают кучу значений #undef
). Это единственный способ сделать это, и если это так, как я могу ввести массив с кортежами?
Кстати, мой вариант использования создает массив изначально неопределенной длины и нажимает на него кортежи в цикле.
Вы можете сделать Array((Int,Int),0)
для этого. Возможно, возможно добавить методы к getindex
, чтобы сделать работу (Int,Int)[]
, но я не уверен, что это того стоит. Не стесняйтесь открывать проблему.
Для тех, кто ищет новейшее решение,
Tuple{Int, Int}[]
работает в v0.4
Также вербальный способ Array{Tuple{Int, Int}}(0)
также работает в v0.4.
Он создает 0-element Array{Tuple{Int64,Int64},1}