如何单独修改工作区变量的值
技术分享
发布于 2025-07-22 14:52:23
查看 1过去315天
问题现象
如何单独修改工作区变量的值
示例:
1.运行下面代码:
using TyBase
dataI = [1,2,3,4];
dataQ = [1,2,3,4];
data = dataI + dataQ*im;
data2 = data'
2.在工作区修改变量 data 的第一个元素为 1+0im

3.可以看到变量 data2 也联动改变:

解决方法
由于 Julia 的赋值操作实质上是变量绑定,即将一个变量存储的其变量值对象的地址赋给一个变量,因此会出现变量之前的联动现象,可以采用深拷贝的方式避免。
示例:
1.将代码修改为以下,运行代码:
using TyBase
dataI = [1,2,3,4];
dataQ = [1,2,3,4];
data = dataI + dataQ*im;
data2 = deepcopy(data');#采用深拷贝
2.在工作区修改变量 data 的第一个元素为 1+0im

3.可以看到变量 data2 没有联动改变:

所属专栏:Syslab基础平台
产品信息:Syslab科学计算环境