在 MATLAB 的搜索路径中找不到 MATLAB 超类
Posted
技术标签:
【中文标题】在 MATLAB 的搜索路径中找不到 MATLAB 超类【英文标题】:MATLAB superclass can not be found on the MATLAB's search path 【发布时间】:2013-09-20 09:40:46 【问题描述】:我有 2 条路径:
C:\controller\functions\verifyModel.m
C:\OGVD\prod\KMLP\controller\controllerStatus.m
verifyModel.m
classdef verifyModel
methods(access=public)
function...
end
end
controllerStatus.m
classdef controllerStatus < verifyModel
.....
end
但是当我运行controllerStatus.m
时,我收到一个错误,因为我使用的类不在路径中
如何将verifyModel
添加到路径中?
【问题讨论】:
【参考方案1】:在使用controllerStatus之前使用:
addpath('C:\controller\functions\')
另外,您可能需要输入@ folder
。只要这些文件夹可见,就会将它们添加到路径中,因此它们是您当前路径的子文件夹 (pwd
)。
或者将 'C:\controller\functions\' 添加到您的静态 matlab 路径中,我不推荐这样做。
另见this answer。
【讨论】:
我不想在类中使用 addpath 添加它,有没有办法自动添加文件? 哼!我对 @folder 感兴趣,我以前没用过:所以我可以把类放在:C:\controller\functions\@function\verifyModel.m 然后不需要调用 addpath ? C:\controller\functions\@verifyModel\verifyModel.m @folder 应该与其 classdef 文件同名。只要 C:\controller\functions\ 在您的路径或当前文件夹中,就无需调用 addpath 我的路径有错误:我刚刚更改了:C:\controller\functions\@verifyModel\verifyModel.m 和来自 controllerStatus.m :classdef controllerStatus 我需要控制器状态中的东西吗?以上是关于在 MATLAB 的搜索路径中找不到 MATLAB 超类的主要内容,如果未能解决你的问题,请参考以下文章