相关疑难解决方法(0)

使用=运算符在Julia中创建副本

当我创建一些数组A并将其分配给B时

A = [1:10]
B = A
Run Code Online (Sandbox Code Playgroud)

我可以修改A,更改反映在B中

A[1] = 42
# B[1] is now 42
Run Code Online (Sandbox Code Playgroud)

但是,如果我使用标量变量执行此操作,则更改不会传播:

a = 1
b = a
a = 2
# b remains being 1
Run Code Online (Sandbox Code Playgroud)

我甚至可以将事物混合起来并将矢量转换为标量,并且变化不会传播:

A = [1:10]
B = A
A = 0
# B remains being 1,2,...,10
Run Code Online (Sandbox Code Playgroud)

=运营商究竟做了什么?当我要复制的变量和修改旧的保存新变量的完整性,当我应该使用b = copy(a)经过短短b=a

julia

17
推荐指数
1
解决办法
2301
查看次数

标签 统计

julia ×1