从任何目录中提供Matlab功能.

Cia*_*lsh 3 matlab

我编写了一个我想多次使用的Matlab函数.为此,我在使用之前将该功能复制到相应的目录中.

这种方法的问题在于它太容易迷失在不同版本的函数中.基本上,我处在一个我不记得哪个版本包含哪些修改的情况.

所以我的问题是,如何才能在任何目录中使用单一版本的函数?

hba*_*rts 5

一种简单的方法是使用以下命令将包含此函数的文件夹添加到搜索路径addpath:

addpath('../a/relative/path')
Run Code Online (Sandbox Code Playgroud)

要么

addpath('/An/absolute/path/on/linux')
addpath('C:/an/absolute/path/on/windows')
Run Code Online (Sandbox Code Playgroud)

正如@brodoll在评论中所建议的那样genpath,创建所有子文件夹列表的函数很有用,因此不仅指定的文件夹,而且所有子文件夹都添加到路径中:

addpath(genpath('path/to/the/folder'))
Run Code Online (Sandbox Code Playgroud)

您可以在使用此功能的每个脚本的开头调用它.

注意:这会将此文件夹添加到当前MATLAB会话的搜索路径中.因此,如果您运行两次脚本,则只需要在第一次添加路径.但是在重新启动MATLAB之后,您需要再次添加路径.

  • 我只想添加一个我喜欢的组合:`addpath(genpath('/ my/path /'))`将my/path下的所有文件夹添加到Matlab的路径中.它非常方便,具体取决于您组织功能的方式 (3认同)