J'ai le MWE suivant
function f(p)
ans = zeros(p, 2)
return ans
end
ans = f(2)
ans
b=ans.+1.0
ans
Au début, ans
est correcte, mais l'opération créant b
écrase ans
.
julia> ans = f(2)
2×2 Matrix{Float64}:
0.0 0.0
0.0 0.0
julia> ans
2×2 Matrix{Float64}:
0.0 0.0
0.0 0.0
julia> b=ans.+1.0
2×2 Matrix{Float64}:
1.0 1.0
1.0 1.0
julia> ans
2×2 Matrix{Float64}:
1.0 1.0
1.0 1.0
C'est une nouvelle installation de julia 1.6.5.
La même chose se produit si je demande juste typeof(ans)
. La valeur de ans
lui-même change à la sortie de typeof(ans)
qui est un DataType.
julia> ans=f(2)
2×2 Matrix{Float64}:
0.0 0.0
0.0 0.0
julia> typeof(ans)
Matrix{Float64} (alias for Array{Float64, 2})
julia> typeof(ans)
DataType
Des idées ?