在 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 超类的主要内容,如果未能解决你的问题,请参考以下文章

matlab找不到指定模块

如何在matlab默认搜索路径中添加文件

matlab找连通区域求路径

matlab怎么设置工作路径

matlab中设置搜索路径

RESTKit:在搜索的关键路径中找不到可映射的对象表示