发布于 2013-08-22 01:30:36
任何名称,甚至包括builtin
和feval
都可以被覆盖。在这种情况下,您可以使用function handles强制MALTAB将语句解释为函数调用:
clear = str2func('clear');
clear('clear')
显然,str2func
也可以被覆盖!:)然而,有一个类似的解决方案(受Loren's article的启发),它创建了一个单独的m文件来做同样的事情:
function clearclear()
assignin('caller', 'clear', @clear);
在主工作区中调用此函数应该允许您安全地执行clear('clear')
。
第二种解决方案利用了这样一个事实,即m文件在主工作区中不会“看到”变量clear
,因此可以正确地访问clear
函数的实际句柄。
发布于 2013-08-21 23:20:42
有趣的问题!我发现很难找到一种编程的方法(除了@TryHard建议的方法)。
下面是我想出来的,尽管它比clear
功能更强大
!matlab &
exit
请注意,如果您希望立即在命令行中键入此命令,则需要在两者之间使用shift+enter。
https://stackoverflow.com/questions/18360624
复制相似问题