如果我们为它赋值(MATLAB),如何取回清除命令?

时间:2016-10-25 07:15:52

标签: matlab clear

在MATLAB中,可以为内置函数分配一个变量值,如plot = 5。从那时起,函数plot()将无法使用。 plot(x),对于变量x,将给出编译错误。要恢复该功能,我们只需使用plot删除变量clear plot

clear是通常用于取回内置函数的命令。

我的问题是,如果我们为函数clear分配一个值(标量或矩阵),我们如何取回函数clear

clear clear显然不会起作用。除了关闭并重新启动MATLAB之外,我想不出能够恢复功能的方法。

2 个答案:

答案 0 :(得分:7)

正如已经提到的那样影响matlab函数的非常糟糕的做法,例如clear - 但是在这种情况下,您可以使用builtin 清除您的clear变量:

>> clear = 1
>> whos
  Name       Size            Bytes  Class     Attributes

  clear      1x1                 8  double              

>> builtin clear
>> whos
>> 

clear clear使用:

builtin clear clear

答案 1 :(得分:1)

不,clear是清除,删除变量的功能。如果你clear变量“阴影”你的函数,那么可以再次找到该函数。如果你“隐藏”clear函数,那么你就无法清除任何东西了!

非常糟糕的做法plot clear surf conv或任何其他MATLAB函数命名,因为阴影问题,以及你清楚地发现了原因。

永远不要在MATLAB中隐藏变量!

@Jucobs在评论中提供了非常好的提示。使用exist。如果事物是​​变量(1)或函数(2,5)

,它将返回不同的值