如何告诉Matlab“重新加载”路径中文件夹中的函数?

mgdq6dx1  于 2023-05-29  发布在  Matlab
关注(0)|答案(1)|浏览(148)

我在一个公共目录中保存了许多自制函数,如下所示:U:\matlab\functions(U:是Windows 10中的Map网络驱动器)。
在startup.m中,我将它添加到路径中:

addpath('U:\matlab\functions');

我可以访问该目录中的函数,没有任何问题,直到我在会话期间在该目录中添加新函数。当我添加一个新函数并尝试使用它时,Matlab找不到它。我试着使用新的功能,它说

Unrecognized function or variable 'newfunction'

不然我就

which newfunction

上面写着

'newfunction' not found

我必须关闭并重新启动Matlab会话,让它找到我刚刚创建的新函数。有没有办法告诉Matlab“重新加载”它在我的路径中包含的函数目录中看到的内容,而不重新启动我的会话?
我使用Matlab R2022a,但我在早期版本中见过这种情况。

tv6aics1

tv6aics11#

可以使用rehash
rehash更新搜索路径上不在matlabroot中的文件夹的已知文件和类的MATLAB®列表。它将加载函数的时间戳与它们在磁盘上的时间戳进行比较。如果磁盘上的文件较新,则会清除加载的函数。

相关问题