2014-06-25 11 views
6

Angenommen, ich habe in Julia ein Array mit einem zusammengesetzten Typ. Ich verstehe, dass ich dem Array einfach keine Werte zuweisen kann, da seine Elemente undefiniert sind. Zum Beispiel der CodeNicht initialisierte Arrays in Julia

type struct 
    u::Int64 
    v::Int64 
end 

X = Array(struct, 100) 
X[10].u = 3 

wird diesen Fehler erzeugen:

ERROR: access to undefined reference 
in getindex at array.jl:277 
in include at boot.jl:238 
in include_from_node1 at loading.jl:114 

Was ist der normale Weg, damit umzugehen? Für jetzt mache ich gerade etwas wie:

Gibt es einen prägnanteren oder julianischeren Weg, dies zu tun?

Antwort

1

Sie können nicht initialisierten Speicherorten in Arrays Werte zuweisen. Sie können Werte nur aus nicht initialisierten Standorten extrahieren.

5

Sie können fill zum Erstellen und ein Array zur gleichen Zeit füllen:

type struct 
    u::Int 
    v::Int 
end 

struct() = struct(0, 0) 
X = fill(struct(), 100) 
X[10].u = 3 
Verwandte Themen