主要内容

确定程序依赖关系

如果您需要知道您的程序依赖于哪些其他函数和脚本,请使用下面描述的技术之一。

程序文件依赖项的简单显示

要简单地显示特定函数引用的所有程序文件,请遵循以下步骤:

  1. 类型清晰的功能从内存中清除所有函数(参见下面的注释)。

    请注意

    清晰的功能不清除被锁定的函数mlock.如果你有锁定的函数(你可以使用inmem)用munlock,然后重复步骤1。

  2. 执行要检查的函数。注意,在此步骤中选择使用的函数参数非常重要,因为使用不同的参数调用相同的函数时可以得到不同的结果。

  3. 类型inmem显示函数运行时使用的所有程序文件。如果你想查看使用了哪些墨西哥文件,指定一个额外的输出:

    [mfiles, mexfiles] = inmem

程序文件依赖项的详细显示

有关相关函数信息的更详细显示,请使用matlab.codetools.requiredFilesAnds manbetx 845Products函数。除了程序文件,matlab.codetools.requiredFilesAnds manbetx 845Products显示哪个MathWorks®s manbetx 845特定功能所依赖的产品。如果你有一个函数,myFun,那叫到边缘图像处理工具箱™功能:

[fList,pList] = matlab.codetools.requiredFilesAnds manbetx 845Products(“myFun.m”);弗利斯特雨
fList = 'C:\work\myFun.m'

唯一需要的程序文件是函数文件本身,myFun

{pList。名称}’
ans = 'MATLAB' '图像处理工具箱'

这个文件,myFun.m,需要MATLAB®以及图像处理工具箱。

文件夹内的依赖关系

依赖关系报告显示文件夹中MATLAB代码文件之间的依赖关系。使用此报告来确定:

  • 该文件夹中的哪些文件是该文件夹中的其他文件所必需的

  • 如果删除一个文件,当前文件夹中的任何文件都会失败

  • 如果当前文件夹中缺少任何被调用的文件

报告中没有列出:

  • 文件matlab工具箱/因为每个MATLAB用户都有这些文件。

    因此,如果您使用的函数文件遮蔽了内置函数文件,MATLAB将这两个文件从列表中排除。

  • 匿名函数调用的文件。

  • 类文件的超类。

  • 调用的文件evalevalc运行负载、函数句柄和回调。

    MATLAB直到运行时才解析这些文件,因此依赖项报告无法发现它们。

  • 一些方法文件。

    依赖关系报告查找在MATLAB文件中调用的类构造函数。但是,在结果对象上执行的任何方法对报表都是未知的。这些方法可以存在于classdef文件,作为单独的方法文件,或属于方法文件的超类或超类的文件。

为了提供有意义的结果,依赖性报告要求如下:

  • 运行报表时的搜索路径与运行文件夹中的文件时的搜索路径相同。(也就是说,当前文件夹位于搜索路径的顶部。)

  • 运行报表的文件夹中的文件不会更改搜索路径或对其进行操作。

  • 文件夹中的文件不会加载变量,或者以其他方式创建名称冲突,从而导致具有相同名称的不同程序元素。

请注意

不要使用依赖项报告来确定其他人运行特定文件需要哪些MATLAB代码文件。而是使用matlab.codetools.requiredFilesAnds manbetx 845Products函数。

创建依赖项报告

  1. 使用“当前文件夹”窗格导航到包含要为其生成依赖项报告的文件的文件夹。

    请注意

    当路径是UNC(通用命名约定)路径时,不能运行报表;也就是说,一条路径开始于\ \.相反,请使用系统上的实际硬盘驱动器,或映射的网络驱动器。

  2. 在“当前文件夹”窗格中,单击,然后选择报告>依赖报告

    依赖报告在MATLAB Web浏览器中打开。

  3. 如果需要,在报告中选择一个或多个选项,如下所示:

    • 要查看文件夹(父)中每个文件调用的所有MATLAB代码文件(子)的列表,请选择显示子函数

      该报告指出每个子函数驻留的位置,例如,在指定的工具箱中。如果报告指定子函数的位置未知,可能是因为:

      • 子函数不在搜索路径上。

      • 子函数不在当前文件夹中。

      • 文件被移动或删除。

    • 若要列出调用每个MATLAB代码文件的文件,请选择显示父函数

      该报告将父函数(调用)限制为当前文件夹中的函数。

    • 若要在报表中包含本地功能,请选择显示子功能.该报告将本地函数直接列在主函数之后,并以灰色突出显示。

  4. 点击运行当前文件夹报告

阅读和使用依赖项报告

下图显示了一个依赖项报告。它表明chirpy.m调用信号处理工具箱™中的两个文件和图像处理工具箱中的一个文件。它还表明go.m调用mobius.m,在当前文件夹中。

依赖性报告包括以下内容:

  • MATLAB文件列表

    运行依赖项报告的文件夹中的文件列表。单击此列中的链接,在编辑器中打开该文件。

  • 孩子们

    MATLAB文件调用的一个或多个函数。

    单击此列中的链接以打开同一行中列出的MATLAB文件,并转到对所调用函数的第一个引用。例如,假设你的依赖报告如上图所示。点击图片\ \ \ erode.m图像打开chirpy.m并将光标放在引用的第一行侵蚀.换句话说,它不能打开erode.m

  • 多个类方法

    因为报告是静态分析,它不能确定运行时数据类型,因此不能识别文件所需的特定类方法。如果多个类方法与引用的方法匹配,依赖项报告将在文件名旁边插入一个问号链接。问号出现在下面的图像中。

    单击问号链接以列出MATLAB可能使用的具有指定名称的类方法。MATLAB列表几乎所有的搜索路径上与指定方法文件匹配的方法文件(在本例中,freqresp.m).如果列表中包含您不熟悉的类方法和MATLAB内置函数,请不要担心。

    您没有必要确定MATLAB将使用哪个文件。MATLAB根据程序在运行时调用的对象来确定使用哪个方法。