I find out that the following code will change the value of
[1.1, 1.1, 1.1, 1.1], although I don’t really want to change its value. It seems that the value of
solution is changing with the value of
solution = ones(4) step_size = 0.1 for i = 1:length(solution) solution_temp = solution solution_temp[i] = solution_temp[i] + step_size end
On the other hand, this will not change the value of
solution with the value of
solution_temp = solution solution_temp = solution_temp .+ step_size
I wonder if there is a general rule to know when the first case will happen and when the second case will happen? Or how should I avoid the first case?