如何在matlab中隐藏工作空间中的变量

时间:2017-08-15 17:36:35

标签: matlab undocumented-behavior

是否有未记录的方法在matlab中呈现变量'invisible',使其仍然存在但未显示在工作区列表中?

3 个答案:

答案 0 :(得分:13)

我能想到的唯一方法是实际使用函数,就像MATLAB定义piij一样。例如:

function value = e
   value = 2.718;
end

没有名为e listed in your workspace的变量,但您可以像使用它一样使用它:

a = e.^2;

从技术上讲,只有whowhos这样的函数不会将其列为变量,而是函数< / em>仍然必须存在于MATLAB path上,并且仍然可以被任何其他脚本或函数调用。

答案 1 :(得分:4)

您可以做的一件事是拥有全局变量。这些有趣的特性是,即使清除工作区,它们仍然存在于内存中,除非您专门清除全局变量。下面是一个例子。

global hidden_var
hidden_var = 1;
clear
global hidden_var
hidden_var

我仍然不完全确定为什么你甚至想要这个功能,但这是一种可以从工作区“隐藏”变量的方法。

答案 2 :(得分:0)

我建议将结构中的变量分组为变通方法。运行下面的代码只会在工作区中显示为mainVariable。缺点是您必须输入整个内容才能访问变量,但您可以缩短名称。


    mainVariable.actualVariable1 = 1
    mainVariable.actualVariable2 = [2, 4]
    mainVariable.actualVariable3 = 'Hello World'