sirve - matlab clear image
Cómo eliminar la variable "clear" en MATLAB (4)
¡Problema interesante! Me resulta sorprendentemente difícil encontrar una manera de hacerlo programáticamente (además del sugerido por @TryHard)
Aquí está el que he encontrado, aunque es un poco más poderoso que clear
:
!matlab &
exit
Tenga en cuenta que si desea escribir esto en la línea de comando de una vez, necesita usar un shift + enter en el medio.
Digamos que eres un programador nuevo y haces algo como ...
%...la da da
%...programming away
if such && such
clear = 1;
else
clear = 0;
end
o de alguna otra forma, le asigna a la variable un valor clear
.
¿Hay alguna forma de "limpiar" clear
?
clearvars
no funciona. Hacer clic en la variable del espacio de trabajo y hacer clic manualmente en eliminar funciona, pero creo que es una trampa.
Esto lo hará:
builtin(''clear'',''clear'')
Nota: recuerde evitar tales operaciones para mantener la claridad del código. Solo sobrescriba cuando es la acción exacta que desea llevar a cabo. De lo contrario, puede causar errores futuros si se olvidó (o si otra persona usa su código y no se dio cuenta) de que tiene la función clara (o cualquier otra) sobrescrita. Podría nombrar fácilmente esta variable como doClear
por ejemplo.
Cualquier nombre, incluso builtin
y feval
puede ser feval
. En tal caso, puede usar identificadores de funciones en su lugar para forzar a MALTAB a interpretar una instrucción como una llamada a función:
clear = str2func(''clear'');
clear(''clear'')
Obviamente, str2func
también puede ser anulado. :) sin embargo, existe una solución similar (inspirada en el artículo de Loren ), que está creando un archivo m por separado que hace lo mismo:
function clearclear()
assignin(''caller'', ''clear'', @clear);
Llamar a esta función en el espacio de trabajo principal debería permitirle clear(''clear'')
forma segura.
La segunda solución aprovecha el hecho de que el archivo m no "ve" la variable clear
en el espacio de trabajo principal y, por lo tanto, puede acceder correctamente al manejo real de la función clear
.
Una forma no intuitiva es
clear = rand(1000,500,700);
pack
Esto produce la siguiente advertencia:
Advertencia: La variable ''borrar'' no se puede guardar en un archivo MAT cuya versión sea anterior a 7.3. Para guardar esta variable, use el modificador -v7.3. Salto a la comba...
También adolece del mismo problema que puede asignarle al pack
para que sea una variable.