【发布时间】:2015-01-31 11:06:07
【问题描述】:
我在 MATLAB 中有一个名为 dat 的结构。我想将 dat 重命名为现有字符串。
Existing_str='NewName'
$(Existing_str)=dat
这失败了,因为我认为 MATLAB 不允许我以这种方式使用美元符号。下面的代码创建了一个 dat 的副本,字面意思是 Existing_str,并在进程中销毁 Existing_str。
Existing_str=dat
虽然下面的代码生成了一个明显不是副本的巨大空结构!
eval(Existing_str)=dat
在我实际尝试执行的任务中,我事先不知道existing_str 的名称,所以这不是解决方案。
【问题讨论】:
-
您可能想告诉我们实际的任务是什么;像这样重命名变量很少有充分的理由,如果您使用大量
eval,那么您将来可能会为自己做更多的工作。 -
@nkjt 我正在从大量 netcdf 文件中挑选出我需要的数据,并将它们粘贴到名为 dat 的结构中的各种数组中。然后我想重命名结构以防止在加载下一批数据时被覆盖。
标签: string matlab data-structures struct