Ah right. Thanks! On Fri, Nov 14, 2014 at 12:54 AM, Mauro <mauro...@runbox.com> wrote:
> > On Fri, 2014-11-14 at 04:56, Amuthan A. Ramabathiran <apar...@gmail.com> > wrote: > > Hello, > > > > I ran into this problem recently: > > > > julia> a = Array{Int,1}[] > > 0-element Array{Array{Int64,1},1} > > > > julia> b = zeros(Int,2) > > 2-element Array{Int64,1}: > > 0 > > 0 > > > > julia> b[1] = 1 > > 1 > > > > julia> push!(a,b) > > 1-element Array{Array{Int64,1},1}: > > [1,0] > > > > julia> b[1] = -1 > > -1 > > > > julia> push!(a,b) > > 2-element Array{Array{Int64,1},1}: > > [-1,0] > > [-1,0] > > > > > > I'm wondering why a[1] changes to [-1,0]. Is it because only a reference > to > > b is stored when it is pushed to a? Are there any simple solutions to > avoid > > this? > > Correct. You can copy b before inserting: > > push!(a,copy(b)) > > I think there is an entry in the FAQ about mutability. >