Matlab:在类中导入函数

时间:2012-05-10 02:26:24

标签: matlab oop packages

我在Matlab中有一个类文件。

我使用包规范创建了i目录结构。

+MyPkg
|--+F1
|--+F2
|--+F3
|  |--fun.m
|--myc.m

我的课程为myc,并将其插入包MyPkg

函数fun保存在主要文件的子包F3中。

我想在班上使用函数fun。如何???

2 个答案:

答案 0 :(得分:2)

您需要将fun称为MyPkg.F3.fun。不幸的是,必须在MATLAB中的任何地方显式使用完整的包(或者,您必须使用import语句)。

答案 1 :(得分:-1)

您使用类描述的方式是在Matlab中执行此操作的“旧”方式。当你使用“旧”方式时,我不知道它是如何工作的,但是Class文件让生活变得更容易。我强烈推荐他们。这样,您可以将一个类的所有函数放在一个文件中。例如,您可以创建一个文件:

myclass.m

classdef myclass
  methods
    function out=add(a,b)
      out=a+b
    end
    function out=subtract(a,b)
      out=a-b
    end
  end
end

如果将myclass.m放在与m文件相同的文件夹中。然后你可以这样访问课程:

a=5;
b=3;
asdf=myclass;
c=asdf.add(a,b)
d=asdf.subtract(a,b)

以下链接有一个更广泛的例子:

http://www.mathworks.com/help/techdoc/matlab_oop/brhzttf.html

我希望有所帮助。