Matlab类库的全局变量

5

我有几个已声明的 matlab 类。如何声明所有类都可见的常量?
例如,这些常量可以是用于所有类方法的物理常量。首先想到的是使用全局变量。有更好的方法吗?最好在单独的文件中声明这些常量。


1
你是否考虑创建一个包含所有这些常量的类?将其命名为 physicalConstants.m,然后引用 physicalConstants.myConstant 等。 - Floris
1
你的意思是只使用这些变量创建更多的抽象类并使用继承吗? - freude
啊,好的,我明白了。 - freude
1
如果你的类都是“真实世界的实例”,那么“真实世界的属性”可以成为一个抽象超类。我想只需要有一个结构(类),你就可以在其中“存放”这些值。 - Floris
1个回答

7

一个包含常量的类是一个不错且清晰的方法。请参见Matlab文档中的文章:http://www.mathworks.com/help/matlab/matlab_oop/properties-with-constant-values.html

例如,如果您创建了一个名为NamedConst的类,如下所示:

classdef NamedConst
   properties (Constant)
      R = pi/180;
      D = 1/NamedConst.R;
      AccCode = '0145968740001110202NPQ';
      RN = rand(5);
   end
end

您可以使用以下方式引用值:
radi = 45*NamedConst.R

你可以在给定的链接中找到更多细节。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接