我有一个关于MATLAB的搜索路径的一些问题:如何使用MATLAB搜索路径
当前目录是在搜索路径,但它为什么没有在“路径”的输出?我在哪里可以找到完整的搜索路径?
添加搜索路径的所有可能的方法是什么?考虑到所有可能的方式来添加搜索路径(例如pathdef.m,startup.m,MATLABPATH env变量等),添加搜索路径的顺序是什么?我认为这很重要,因为当名称相同的文件存在于不同的搜索路径中时,顶部的文件将被选中。
我有一个关于MATLAB的搜索路径的一些问题:如何使用MATLAB搜索路径
当前目录是在搜索路径,但它为什么没有在“路径”的输出?我在哪里可以找到完整的搜索路径?
添加搜索路径的所有可能的方法是什么?考虑到所有可能的方式来添加搜索路径(例如pathdef.m,startup.m,MATLABPATH env变量等),添加搜索路径的顺序是什么?我认为这很重要,因为当名称相同的文件存在于不同的搜索路径中时,顶部的文件将被选中。
由Amro提供的链接应该是非常有帮助的解答您的问题。为了更具体地解决这些问题:
从PATH输出将显示pathdef.m
文件的内容,其中应包括以下所有条件:提供MATLAB和其他MathWorks产品(
文件夹即工具箱)。这些文件夹位于MATLAB的根文件夹中,您可以使用MATLABROOT函数找到这些文件夹。
MATLAB用户文件夹(即Windows平台上的My Documents\MATLAB
),可以使用USERPATH函数找到。
用户添加到路径文件中的任何其他文件夹。
完整的search path包含上述内容,加上当前目录。当前目录不会保存为路径文件的一部分,因为它可以在MATLAB会话期间进行更改。您可以使用PWD函数找到当前文件夹。
可以通过更改路径文件或当前目录来更改search path。您可以修改通过以下方式的路径文件:
使用Set Path dialog box,它可以在命令窗口中选择文件>设置路径或通过调用函数PATHTOOL打开。
而且当前目录可以通过以下方式改变:
使用CD功能。
当您使用上述方法修改路径文件时,通常会将新文件夹添加到路径列表的顶部。您可以使用Set Path dialog box更改路径文件中路径的顺序。
当存在share the same name,MATLAB遵循以下function precedence order以确定功能要使用哪个函数:
变量(如果一个变量共享相同的名称作为一个功能)
嵌套函数
子功能
私人功能
Class构造
重载方法
功能在当前目录
功能别处的搜索路径上
。注意,在一个功能当前目录在搜索路径的其他地方被调用。此外,距离搜索路径顶部最近的文件优先于文件更远的文件。
最好的答案就是你点到相关的MATLAB文件: