Существует ли способ очистить все персистентные переменные в функциях MATLAB при хранении точек останова в соответствующих функциональных файлах?
clear all;
и
clear functions;
оба уничтожают точки останова.
К сожалению, очистка постоянных переменных также очищает точки останова, но есть обходной путь.
После установки точек останова, которые вы хотите сохранить, используйте функцию dbstatus
, чтобы получить структуру, содержащую эти точки останова, а затем сохранить эту структуру в файл MAT. После очистки переменных вы можете перезагрузить эти переменные, загрузив файл MAT и используя dbstop. Ниже приводится пример выполнения этой последовательности операций:
s=dbstatus;
save('myBreakpoints.mat', 's');
clear all
load('myBreakpoints.mat');
dbstop(s);
Если в @directories есть данные, вы все равно можете использовать метод, который RTBarnard предлагает
s=dbstatus('-completenames');
save('myBreakpoints.mat','s');
%# if you're clearing, you may as well just clear everything
%# note that if there is stuff stored inside figures (e.g. as callbacks), not all of
%# it may be removed, so you may have to 'close all' as well
clear classes
load('myBreakpoints.mat')
dbstop(s);
%# do some cleanup
clear s
delete('myBreakpoints.mat')