Matlab中clear函数的⽤法⽬录
clear函数是从⼯作区中删除项⽬、释放系统内存
语法
clear
clear name1 ... nameN
clear -regexp expr1 ... exprN
clear ItemType
说明
clear 从当前⼯作区中删除所有变量,并将它们从系统内存中释放。
ameN删除内存中的变量、脚本、函数或 MEX 函数 name1 ... nameN。
clear -prN删除与列出的任何正则表达式匹配的所有变量。此选项仅删除变量。
clear ItemType删除ItemType指⽰的项⽬类型,例如 all、functions或classes。
⽰例
清除单个变量
定义两个变量 a 和 b,然后清除 a。
a = 1;
b = 2;
clear a
仅变量 b 保留在⼯作区中。
whos
Name      Size            Bytes  Class    Attributes
b        1x1                8  double
按名称清除特定的变量
使⽤正则表达式,清除其名称以 Mon、Tue 或 Wed 开头的这些变量。
clear -regexp ^Mon ^Tue ^Wed;
清除变量集
创建⼀个包含要清除的变量的名称的元胞数组 vars。然后,清除这些变量。
vars = {'v1','v2','time'};
clear(vars{:})
清除所有编译的脚本、函数或 MEX 函数
如果函数被锁定或当前正在运⾏,则它不会从内存中清除。
clear functions
要清除的变量、脚本、函数或MEX 函数的名称,指定为⼀个或多个字符向量或字符串标量。
如果name是:
函数,则clear重新初始化函数中的任何持久变量。不⽀持指定局部或嵌套函数。
当前正在执⾏的脚本或函数或者由mlock锁定的函数,则clear不会将其删除。
全局变量,则 clear 会将其从当前⼯作区中删除,但它仍保留在全局⼯作区中。要从所有⼯作区中删除全局变量,请使⽤ clear global variable。
使⽤部分路径区分不同重载版本的函数。例如,clear polynom/display 仅清除 polynom 对象的 display ⽅法,并将任何其他实施保留在内存中。
要清除的项⽬的类型,指定为下列值之⼀。
Item Typ e 的值清除的项
注释范
MEX实例化类和实例化对象
函数
导⼊
列表
动态路
径上的
Java
all✓✓✓✓✓仅从
命令
提⽰
调⽤ clear all 会降低代码性能,且通常没有必要。有关详细信息,请参阅提⽰
部分。
clas ses ✓✓✓✓✓✓✓
调⽤ clear classes 会降低代码性能,且通常没有必要。有关详细信息,请参阅
提⽰部分。
要使⽤更新后的类定义实例化对象,不需要调⽤ clear classes。如果您修改类
定义,MATLAB® 会⾃动更新它。
如果任何⼀类对象在清空⼯作区之后仍存在,clear classes 将发出警告⽽不清
除这些对象。例如,对象仍可以存在于函数或图窗窗⼝的持久变量中。
如果使⽤ mlock 命令锁定了类⽂件,clear classes 将不清除该类。在这种情况
下,将不发出警告。
func
tion s ✓✓✓
调⽤ clear functions 会降低代码性能,且通常没有必要。有关详细信息,请参
阅提⽰部分。
glob
al
clear global  删除当前⼯作区和全局⼯作区中的所有全局变量。例如,当从函数
调⽤时,clear global  会删除函数和全局⼯作区中的所有全局变量,但不会删除基础⼯作区中的所有全局变量。imp ort ✓
仅从命令提⽰符调⽤ clear import 。在函数或脚本中调⽤ clear import  将返回错误。java
✓✓✓✓✓✓如果 Java 类的任何 Java 对象存在于⼯作区外部(例如存在于锁定的代码⽂件的⽤户数据或持久变量中),clear java  将发出警告⽽不删除该 Java 类定义。在修改动态 Java 类路径中的任何⽂件之后发出 clear java  命令。mex
✓clear mex  不清除锁定的 MEX 函数或当前正在使⽤的函数。
vari
able
s ✓Item Typ e  的值清除的项注释范围中的变
量脚本和函数类
义持久变量MEX 函数全局变量导⼊列表动态路径上的Java 类注意
如果变量的名称为 ItemType  的值,则调⽤ clear  并后跟该名称会删除具有该名称的变量。clear  不会将名称解释为此上下⽂中的关键字。例如,如果⼯作区包含变量 a 、all 、b  和 ball ,clear all  仅删除变量 all 。
提⽰
调⽤ clear all 、clear classes  和 clear functions  会降低代码性能,且通常没有必要。
要从当前⼯作区中清除⼀个或多个特定变量,请使⽤ clear name1 ... nameN 。
要清除当前⼯作区中的所有变量,请使⽤ clear  或 clearvars 。
要清除所有全局变量,请使⽤ clear global  或 clearvars –global 。
要清除特定类,请使⽤ clear myClass 。
要清除特定函数或脚本,请使⽤ clear functionName 。
要清除所有 MEX 函数,请使⽤ clear mex 。
clear函数可以删除您指定的变量。要删除除⼏个指定变量之外的所有变量,请改⽤ clearvars 。
如果清除图窗或图形对象的句柄,该对象⾃⾝将不会删除。可使⽤ delete  删除对象。另⼀⽅⾯,删除对象并不会删除⽤于存储其句柄的变量(如果有)。
clear函数不会清除 Simulink ® 模型。请改⽤ bdclose 。clear函数不会清除局部函数或嵌套函数中的持久变量。
在 UNIX ® 系统中, clear不会影响分配给 MATLAB 进程的内存量。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。