我一直在搜索整个下午,但没有找到通过指定路径而不是将其目录添加到路径中来调用 matlab 函数的解决方案。
这个问题非常类似于Is it possible to call a function that is not in the path in MATLAB? ,但就我而言,我不想调用内置函数,而只是调用 m 文件中定义的普通函数。
我认为句柄可能是一个解决方案(因为显然它们可以引用不在路径上的函数),但我再次发现没有办法创建句柄而不cd
-ing 到目录,在那里创建它并cd
返回 -ing。试图“探索”什么是函数句柄对象以及如何通过对不在路径上的特定函数的引用来制作一个对象,这让我无处可去。
因此解决方案可能来自两个角度:
1)您知道如何为特定目录中的 m 文件创建句柄。
2)您知道一种调用不在 matlab 路径上的函数的方法。
编辑:我刚刚发现了这个函数functions(myhandle)
,它实际上可以让你看到句柄所指的文件路径。但是仍然没有办法修改它...