Matlab 7.12 2011a,我有一个finish.m
文件。当我在正常情况下从命令窗口调用quit
或exit
时,一切都很顺利。但是如果我处于调试模式,在命令窗口中工作(提示现在是K>>
)并输入exit
,我的现有matlab.mat数据文件将被删除并替换为Matlab无法使用的1k文件打开。编辑:不能重复这种腐败。 matlab.mat文件确实包含调试环境的内容(没有别的)。
我知道退出调试的正确命令是dbquit
。我的问题是为什么Matlab允许我在我不在我的家庭环境中时使用exit
- 或者为什么Matlab不会将其重新映射到dbquit
,以避免这种灾难性的数据丢失。
编辑:这是我的finish.m
代码
disp('保存工作区数据');
保存
保存(sprintf的( 'mat_%s' 的,日期));
在调试器内部调用exit
会导致finish.m
保存函数工作空间的内容(而不是父环境)。当您测试此exit
来电时,您的主要环境是否已实际保存?